修改PJBlog验证码为算术运算或文字问题,有效防止垃圾广告
今天上自己小站的时候,发现评论里出现大量的广告信息,真是可恶!很可能是广告机器人发的。是时候要改进PJBlog的验证方式了。首先看一下效果图:

具体的修改方法
1. 打开common目录下的function.asp,在大约50行左右可以找到以下代码:
'************************************* '获得注册码 '************************************* Function getcode() getcode= "<img src=""common/getcode.asp"" alt="""" style=""margin-right:40px;""/>" End Function
2. 将其替换为以下代码:
'*************************************
'获得注册码
'*************************************
'Function getcode()
getcode= "<img src=""common/getcode.asp"" alt="""" style=""margin-right:40px;""/>"
'End Function
'*************************************
'获得注册码,运算问题
'NewValidate For PJblog2 BY Bigheadlyf
'更新时间: 2007-4-4
'*************************************
Function getcode()
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 + 5"
AnswerArray(6)="9"
Randomize
CodeIndex = Int((QuesionNum * Rnd) + 0)
Session("GetCode") = AnswerArray(CodeIndex)
getcode = "<span style=""margin-right:40px;"">" & QuesionArray(CodeIndex) & "</span>"
End Function
其他修改建议
问题可以设置为加减乘除任意问题或者其他文字问题,例如“987 x 654 = ?”、“中国有几个少数民族?”等等,不要让浏览者答不上就可以了。同时也建议将验证码输入框宽度改小些,且最大输入字符数设置为2。
本文永久链接地址:http://www.hack520.org/pjblog-code

fff
[回复]
测试下验证码
[回复]
GEG
[回复]