新增加一个防垃圾评论的asp代码,鄙视垃圾
最近开通了,可以发表评论就一直被垃圾评论和留言困扰,一直没有找到很好的解决办法。事实上wordpress有一些强悍的插件可以防治spam,比如Akismet,不过这只能让我留着口水羡慕,因此最近一直在寻找一个相对较好的解决方案。
今天在Bigik.cn上看到一个不错的方法,Bigik使用加法运算形式的用户验证来解决这个问题。现把方法转载过来。当然这个方法不是很完善,我发现还会有一些spam进来。
Function getnum()
Dim QuesionNum
QuesionNum=7 '问题的总数,如要添加问题,请先修改这个数值
Dim CodeIndex
CodeIndex=0
Dim QuesionArray(100)
Dim AnswerArray(100)
QuesionArray(0)="= 1 + 1" '问题列表及答案,可自行修改
AnswerArray(0)="2"
QuesionArray(1)="= 2 + 2"
AnswerArray(1)="4"
QuesionArray(2)="= 3 + 4"
AnswerArray(2)="7"
QuesionArray(3)="= 2 + 4"
AnswerArray(3)="6"
QuesionArray(4)="= 1 + 2"
AnswerArray(4)="3"
QuesionArray(5)="= 2 + 3"
AnswerArray(5)="5"
QuesionArray(6)="= 4 + 4"
AnswerArray(6)="8"
Randomize
CodeIndex = Int((QuesionNum * Rnd) + 0)
Session("Getnum") = AnswerArray(CodeIndex)
getnum = "<span style=""margin-right:40px;"">" & QuesionArray(CodeIndex) & "</span>"
End Function
<%response.write getnum()%>
其他修改建议:
问题可以设置为加减乘除任意问题或者其他文字问题,例如“987 x 654 = ?”、“中国有几个少数民族?”等等,不要让浏览者答不上就可以了:P。
建议将验证码输入框宽度改小些,且最大输入字符数设置为2。
相关推荐
-
自动发帖机的斗争过程防止垃圾评论的几个方法总结
自网站开放之日起,这个垃圾信息就没有消停过,而且这个垃圾发帖的时间都有一定的规律,一般是从上午9点.10点的时候开始,到下午下班前这段时间,是发帖机发动的时候,看的出来,发帖机的操作者也是一个正常上班的"好同志". 从发帖机发布的信息来看,操作者也刻意优化了下信息内容,以免信息过于垃圾,直接导致发帖被屏蔽而失败:有时候,我看着这些内容,还真为这些操作者们拍案叫绝,因为连我差点都被这些机器发的帖子给迷惑住了.但是,从连续的几个帖子发布的时间间隔来看,有的竟然是同一秒钟发布出来的!只要你真
-
PHP实现通过中文字符比率来判断垃圾评论的方法
本文实例讲述了PHP实现通过中文字符比率来判断垃圾评论的方法.分享给大家供大家参考.具体实现方法如下: 一.需求: 最近一段时间常常出现这类垃圾评论:一大段英文字符里夹杂一两个生僻汉字,包含了中文字符,而且又没包含啥中文的敏感词,所以就堂而皇之的通过了评论过滤.对这类评论的处理可以采取判断中文字符的比率来确认,但是也会存在一定的误判. 二.解决方案: 要用到php的两个函数strlen和mb_strlen,strlen会把单个汉字长度认定为3,mb_strlen单个汉字长度为1.同一段字符通过两
-
php实现删除指定目录下相关文件的方法
本文实例讲述了php实现删除指定目录下相关文件的方法.分享给大家供大家参考.具体实现方法如下: 通常来说在php中删除文件最简单的方法就是直接使用unlink命令,而对于需要删除指定目录下的指定文件的情况,就需要遍历删除了. 具体实例代码如下: 复制代码 代码如下: <?php //删除指定文件夹下的非法文件 function my_del($dir) { if(is_dir($dir)){ //打开指定文件夹 if($handle = opendi
-
PHP用strstr()函数阻止垃圾评论(通过判断a标记)
strstr() 函数搜索一个字符串在另一个字符串中的第一次出现.该函数返回字符串的其余部分(从匹配点).如果未找到所搜索的字符串,则返回 false. 语法:strstr(string,search) 参数string,必需.规定被搜索的字符串. 参数search,必需.规定所搜索的字符串.如果该参数是数字,则搜索匹配数字 ASCII 值的字符. 该函数对大小写敏感.如需进行大小写不敏感的搜索,请使用 stristr(). strstr()函数简单演示 复制代码 代码如下: <?phpecho
-
php自定义apk安装包实例
本文实例讲述了php自定义apk安装包的方法,分享给大家供大家参考.具体实现方法如下: 众所周知,apk格式安装文件是android智能系统的安装文件,下面我们来看一个利用php实现自定义apk安装包实例. 一.需求: 需要实现对产品进行一次推荐好友安装的活动,每个会员下载自己的专属安装包(里面记录会员的相关信息). 二.思路: 经过了解,发现apk安装包原来只是zip的一个马甲,使用php的ZipArchive类可以对文件进行操作. 三.实现代码: 复制代码 代码如下: // 源文件 $apk
-
php实现给图片加灰色半透明效果的方法
本文实例讲述了php实现给图片加灰色半透明效果的方法.分享给大家供大家参考.具体实现方法如下: 原理: 1.首先计算出原图片的尺寸 2.创建相同尺寸的半透明图片 3.使用 imagecopy()方法,把新创建的半透明图片与原图合并 具体实现代码如下: 复制代码 代码如下: <?php /*php 给图片加灰色透明效果*/ $imfile = './0.jpg';//原图 $origim = imagecreatefromjpeg($imfile);//从 JPEG 文件或 URL 新建一图像
-
php防止站外远程提交表单的方法
本文实例讲述了php防止站外远程提交表单的方法,分享给大家供大家参考.具体实现方法如下: 一般来说防止站长提交表单无非就是对每一次打开表单或提交数据都会需要加一个token来进行验证了,这个其实与验证码做法没什么两样了,下面来看几个防止站外远程提交表单的例子. 例子一:我们每一次打开提交页面生成一个token然后保存在session中,当表单提交时我们来判断当前的token值与session是否一致,如果是的就是正常提交否则就是无效提交了. 具体代码如下: 复制代码 代码如下: <?php
-
php中使用Akismet防止垃圾评论的代码
然而,人无完人,插(件)无完插!Akismet也并非完美,最近, 我常在被Akismet评判为垃圾的留言中找到"好人"的留言,然而,有时时间长了就自动删除了,损失珍贵的友情和留言. 别忘了修改代码中的 __YOUR_AKISMET_KEY__, __YOUR_WEBSITE_URL__ and __YOUR_NAME__ http://www.script-tutorials.com/akismet-spam-protection/ index.php 复制代码 代码如下: <?
-
php的ZipArchive类用法实例
本文实例讲述了php的ZipArchive类用法,分享给大家供大家参考.具体如下: 通常来说,php5.2开始支持ZipArchive类,php4只能使用zip函数.其实在官方实现zip类之前,已经有大牛贡献了打包解压zip文件的方法.现在php包含了ZipArchive类,当然优先使用.使用该类能创建和解压zip文件,也能直接读取zip压缩包内的内容,很方便,这里主要总结下读取和解压的过程. 解压一个包到指定目录: 复制代码 代码如下: <?php $zip = new ZipArchive;
-
PHP清除数组中所有字符串两端空格的方法
本文实例讲述了PHP清除数组中所有字符串两端空格的方法,分享给大家供大家参考.具体实现方法如下: 一般来说在php中清除字符串中空格我们可以有很多实现方法,但清除数组中所有值的前后代码我们并不能简单的使用这些方法,本文实例主要使用php独有的array_map函数遍历清除数组中所有字符串的两端空格. 具体实现代码如下: 复制代码 代码如下: function TrimArray($Input){ if (!is_array($Input)) return trim($
-
php实现过滤表单提交中html标签的方法
本文实例讲述了php实现过滤表单提交中html标签的方法.分享给大家供大家参考.具体实现方法如下: 有时候我们做的简单评论功能会发现有提交很多的html标签,这些标签会导致页面有一些外连的情况,下面我们一起来看在php中过滤表单提交的html标签方法. 近评论中有一些机器人提交的post链接,都是一些垃圾评论.为了减少这种无谓的链接内容出现,其实是可以用php来删除表单POST提交的html标签,这样机器提交的信息也不会得到他们要的结果.而且可以减少来自seo/seo.html" target=
-
php获取textarea的值并处理回车换行的方法
本文实例讲述了php获取textarea的值并处理回车换行的方法.分享给大家供大家参考.具体实现方法如下: 一般来说,在html表单中textarea中我们按回车与换行都是一些ascii或特殊的字符的编码,如果不进行转换输出文字是没的排版的. php获取textarea的值是十分简单的 textarea回车换行为 \r\n 下面看例子 HTML代码: 复制代码 代码如下: <Textarea name="test" rows="3″ cols="20″ id=
-
PHP中加密解密函数与DES加密解密实例
本文实例讲述了PHP中加密解密函数与DES加密解密的应用,分享给大家供大家参考.具体如下: 例子,php加密解密的例子 加密函数: 复制代码 代码如下: /* *功能:对字符串进行加密处理 *参数一:需要加密的内容 *参数二:密钥 */ function passport_encrypt($str,$key){ //加密函数 srand((double)microtime() * 1000000); $encrypt_key=md5(rand(0, 32000)); $ctr=0; $t
随机推荐
- Python实现读取TXT文件数据并存进内置数据库SQLite3的方法
- 探讨jQuery的ajax使用场景(c#)
- 批量修改所有服务器的dbmail配置(推荐)
- IOS Object-C 中Runtime详解及实例代码
- 微信小程序 window_x64环境搭建
- JS实现简单的选择题测评系统代码思路详解(demo)
- 如何为CheckBoxList和RadioButtonList添加滚动条
- ASP.NET技巧:access下的分页方案
- 全面解析C++中的析构函数
- javascript获取系统当前时间的方法
- 如何对一个文件夹进行创建和删除?
- js动态控制table的tr、td增加及删除的具体实现
- SQL中位数函数实例
- 小议Function.apply() 之一------(函数的劫持与对象的复制)
- javascript学习笔记(十) js对象 继承
- C#如何将DataTable导出到Excel解决方案
- ThinkPHP内置jsonRPC的缺陷分析
- PHP编程与应用
- nginx配置ssl证书实现https访问的示例
- 一些可能会用到的Node.js面试题