请选择 进入手机版 | 继续访问电脑版
程序更新官方微博演示站点
2012年1月18日-2012年2月18日论坛调整:只开启邀请注册,23:30-7:30不能发帖,其他暂时不变。由此带来的不便,敬请谅解!!

[PJBlog^3]用户聚居地 - ASP开源中文个人博客系统PJBlog

 找回密码
 立即加入PJHOME

QQ登录

只需一步,快速开始

PJHOME小黑板报 你的关注和支持,是PJBlog不断成长的动力 给论坛提建议 - 给版主提建议

PJBlog3 使用交流 最新版本:PJBlog3 V3.2.9.518(2011/11/01) 安装 - 升级 - 转换 - 模板 - 插件 - 反馈

论坛指南 - 版主申请 - 链接申请 - 博客展示 - 有偿定制 PJBBS恭祝龙年新春快乐 - PJHOME2011改版,全新起航 PR≥3,alexa≤15万,与我们互链 - 风云互联 - 商务合作

查看: 23406|回复: 31

修改PJBlog验证码为加法运算题,有效防止广告信息.  关闭 [复制链接]

Rank: 8Rank: 8

PJ币
1185 元
积分
2410
帖子
71
注册时间
2006-1-26
在线时间
188 小时

PJBLOG SKIN设计师 - 第二届PJBLOG2 SKIN设计大赛入围前十名颁发

发表于 2007-4-4 11:25:08 |显示全部楼层
每天清理Blog的广告评论和留言就得花上不少时间,甚至有一次3天没上网,打开Blog发现90多条广告评论,顿时觉悟:是时候改进PJ的验证方式了。最近看到mifly的WP上采用了新的验证码,形式是一道加法运算题,简单明了,而且也对于浏览者来说,填写一个1到2位数的答案,比起填写4到6位数的验证码舒服多了。
  于是自己稍微研究了PJ的验证码机制,参照BoBlog的类似功能,做一点改动,初步实现加法运算形式的用户验证。当然WP上那个算法验证码是随机生成的,技术含量比我这个简单的小修改强很多,具体修改效果如下:


具体演示:http://bigik.cn/blog/article.asp?id=245

修改方法:

1. 打开common目录下的function.asp,在大约50行左右可以找到以下代码:

  1. '*************************************
  2. '获得注册码
  3. '*************************************  
  4. 'Function getcode()
  5.                 'getcode= "<img src=""common/getcode.asp"" alt="""" style=""margin-right:40px;""/>"               
  6. 'End Function
复制代码


2. 将其替换为以下代码:

  1. '*************************************
  2. '获得注册码
  3. '*************************************  
  4. 'Function getcode()
  5.                 getcode= "<img src=""common/getcode.asp"" alt="""" style=""margin-right:40px;""/>"               
  6. 'End Function

  7. '*************************************
  8. '获得注册码,运算问题
  9. 'NewValidate For PJblog2 BY Bigheadlyf
  10. '更新时间: 2007-4-4
  11. '*************************************
  12. Function getcode()

  13. Dim QuesionNum
  14. QuesionNum=7  '问题的总数,如要添加问题,请先修改这个数值
  15. Dim CodeIndex
  16. CodeIndex=0

  17. Dim QuesionArray(100)
  18. Dim AnswerArray(100)

  19. QuesionArray(0)="= 1 + 1"                       '问题列表及答案,可自行修改
  20. AnswerArray(0)="2"
  21. QuesionArray(1)="= 2 + 2"
  22. AnswerArray(1)="4"
  23. QuesionArray(2)="= 3 + 4"
  24. AnswerArray(2)="7"
  25. QuesionArray(3)="= 2 + 4"
  26. AnswerArray(3)="6"
  27. QuesionArray(4)="= 1 + 2"
  28. AnswerArray(4)="3"
  29. QuesionArray(5)="= 2 + 3"
  30. AnswerArray(5)="5"
  31. QuesionArray(6)="= 4 + 4"
  32. AnswerArray(6)="8"

  33. Randomize
  34. CodeIndex =  Int((QuesionNum * Rnd) + 0)
  35. Session("GetCode") = AnswerArray(CodeIndex)
  36. getcode = "<span style=""margin-right:40px;"">" & QuesionArray(CodeIndex) & "</span>"
  37. End Function
复制代码


3. 保存文件,上传到服务器,测试~

4. 其他修改建议:
问题可以设置为加减乘除任意问题或者其他文字问题,例如“987 x 654 = ?”、“中国有几个少数民族?”等等,不要让浏览者答不上就可以了  。
建议将验证码输入框宽度改小些,且最大输入字符数设置为2。

希望大家喜欢~ 具体效果有待测试~  有问题请到我的Blog-bigik.cn留言,最近访问PJBBS的速度特慢....

[ 本帖最后由 bigheadlyf 于 2007-4-4 11:26 编辑 ]
已有 1 人评分PJ币 收起 理由
52077 + 22 大头加油!

总评分: PJ币 + 22   查看全部评分

论坛统一签名亲,我们的论坛签名是需要消费PJ币哦!!点击购买签名

温馨提示:博客地址敬请放在签名档,方便协助解决问题!

币币很多,花不完?来吧,购买他人签名,挂上你的链接!

Rank: 18Rank: 18Rank: 18

PJ币
298 元
积分
3751
帖子
231
注册时间
2007-1-19
在线时间
352 小时
发表于 2007-4-4 12:41:48 |显示全部楼层
论坛统一签名亲,我们的论坛签名是需要消费PJ币哦!!点击购买签名

温馨提示:博客地址敬请放在签名档,方便协助解决问题!

币币很多,花不完?来吧,购买他人签名,挂上你的链接!

使用道具 举报

PJFans LV2

一分一分,攒到结婚

Rank: 8Rank: 8

PJ币
283 元
积分
890
帖子
150
注册时间
2006-9-22
在线时间
74 小时
发表于 2007-4-4 13:09:31 |显示全部楼层
论坛统一签名亲,我们的论坛签名是需要消费PJ币哦!!点击购买签名

温馨提示:博客地址敬请放在签名档,方便协助解决问题!

币币很多,花不完?来吧,购买他人签名,挂上你的链接!

使用道具 举报

Rank: 8Rank: 8

PJ币
1185 元
积分
2410
帖子
71
注册时间
2006-1-26
在线时间
188 小时

PJBLOG SKIN设计师 - 第二届PJBLOG2 SKIN设计大赛入围前十名颁发

发表于 2007-4-5 09:14:50 |显示全部楼层
谢谢大家的支持~

经过几天测试,觉得Mr.W版主说的有道理。。。

想不到什么好的中文问题,各位有什么好题目分享分享~
论坛统一签名亲,我们的论坛签名是需要消费PJ币哦!!点击购买签名

温馨提示:博客地址敬请放在签名档,方便协助解决问题!

币币很多,花不完?来吧,购买他人签名,挂上你的链接!

使用道具 举报

Rank: 18Rank: 18Rank: 18

PJ币
298 元
积分
3751
帖子
231
注册时间
2007-1-19
在线时间
352 小时
发表于 2007-4-6 13:03:08 |显示全部楼层
0+1= 一 (大写"一")
论坛统一签名亲,我们的论坛签名是需要消费PJ币哦!!点击购买签名

温馨提示:博客地址敬请放在签名档,方便协助解决问题!

币币很多,花不完?来吧,购买他人签名,挂上你的链接!

使用道具 举报

Rank: 18Rank: 18Rank: 18

PJ币
298 元
积分
3751
帖子
231
注册时间
2007-1-19
在线时间
352 小时
发表于 2007-4-6 13:12:03 |显示全部楼层
其它那个在0+1=?(*****)括号中的可以写提示:如,请大写一字。

另一个中文问题:
你爱我吗?
A:爱      (答对,通过)
B:不爱   (答错,不通过)
论坛统一签名亲,我们的论坛签名是需要消费PJ币哦!!点击购买签名

温馨提示:博客地址敬请放在签名档,方便协助解决问题!

币币很多,花不完?来吧,购买他人签名,挂上你的链接!

使用道具 举报

Rank: 18Rank: 18Rank: 18

PJ币
298 元
积分
3751
帖子
231
注册时间
2007-1-19
在线时间
352 小时
发表于 2007-4-6 14:40:59 |显示全部楼层

回复 #11 星铃丹 的帖子

目前这是最好的办法!
假不假别人也不知道```````
论坛统一签名亲,我们的论坛签名是需要消费PJ币哦!!点击购买签名

温馨提示:博客地址敬请放在签名档,方便协助解决问题!

币币很多,花不完?来吧,购买他人签名,挂上你的链接!

使用道具 举报

Rank: 8Rank: 8

PJ币
91 元
积分
893
帖子
63
注册时间
2007-3-26
在线时间
83 小时
发表于 2007-4-6 15:03:22 |显示全部楼层
汗   怎么不能用的
论坛统一签名亲,我们的论坛签名是需要消费PJ币哦!!点击购买签名

温馨提示:博客地址敬请放在签名档,方便协助解决问题!

币币很多,花不完?来吧,购买他人签名,挂上你的链接!

使用道具 举报

Rank: 22Rank: 22Rank: 22Rank: 22

PJ币
63 元
积分
9754
帖子
164
注册时间
2006-9-26
在线时间
949 小时
发表于 2007-4-6 15:12:44 |显示全部楼层
有问题啊,按照以上做了后,只要回答的数字不超过8都是正确的,为什么?

使用道具 举报

Rank: 8Rank: 8

PJ币
4 元
积分
767
帖子
37
注册时间
2006-1-23
在线时间
73 小时
发表于 2007-4-6 18:52:00 |显示全部楼层
论坛统一签名亲,我们的论坛签名是需要消费PJ币哦!!点击购买签名

温馨提示:博客地址敬请放在签名档,方便协助解决问题!

币币很多,花不完?来吧,购买他人签名,挂上你的链接!

使用道具 举报

您需要登录后才可以回帖 登录 | 立即加入PJHOME

关闭

PJHOME小黑板报

手机版|纯文字版|BBS.PJHOME.NET ( 粤ICP备11022983号-1 )  

GMT+8, 2012-2-4 14:29 , Processed in 0.082612 second(s), 9 queries , Eaccelerator On.

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部