自己写的一个PJBlog中可以双击输入验证码的修改
作者:dudo 来源:dudo博客 时间:2009-05-17 10:51:00
看到有人用的PJBlog使用的是自动填写验证码,这样其实也不使用验证码基本上没有什么区别,很容易被 * ,因此在参照许多修改的基础上,找到了一个折衷的方法,既可以方便地输入验证码又可以较好地避免恶意留言。
不说废话,下面来看过程吧:
一共三处改动:
1、新建一个asp文件,这里给他起个名字叫code.asp,然后写入如下代码:
<body>
<input type="text" id="tempGetCode" value="<%=Session("GetCode")%>" >
</body>
2、在footer.asp中的最后面,</body>标签之前下添加如下代码
<!--以上为原代码以下是自定义代码:双击自动填写验证码-->
<script>
//获得验证码
function getValidateCode(){
var oValidate;
oValidate = document.getElementById("validate")
oValidate.value =parent.getCode.document.getElementById("tempGetCode").value;
}
</script>
<iframe frameborder="no" style="display:none" src="code.asp" name="getCode" id="getCode"></iframe>
<!--自定义代码到此结束,以下为原程序-->
3、修改目录/class下的cls_article.asp,将原代码
<td align="right" width="70">
<strong>验证码:</strong></td><td align="left" style="padding:3px;">
<input name="validate" type="text" size="4" class="userpass" maxlength="4" />
<%=getcode()%></td>
修改成
<td align="right" width="70">
<strong>验证码:</strong></td><td align="left" style="padding:3px;">
<input id="validate" name="validate" type="text" size="4" class="userpass" maxlength="4" ondblclick="getValidateCode()" />
<%=getcode()%></td>
这里一定要注意添加id="validate"否则在FF2.0不能达到预期效果
这里也有一个关于双击填写的http://bbs.pjhelp.cn/viewthread.php?tid=18851&highlight=%D1%E9%D6%A4%C2%EB
我觉得自动填写验证码很容易让人恶意刷屏灌水,双击的话既能减少工作量又能防水呢。
后续问题
存在一个问题就是,当你点击图片切换时验证码发生改变,而你双击输入框却还是第一次加载时的验证码。这是因为<iframe />没有自动刷新的缘故。要想避免这种情况的发生其实也比较简单,不过可能会再修改较多的代码。因此我这里没有考虑这个问题。如果我找到简单实现的方法我会及时在本方面修正。
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
IE6,IE7中定位相关的怪异问题
![](https://img.aspxhome.com/file/UploadPic/200912/8/position_demo1-45s.png)
ASP如何操作Excel(读取,输出)
关于浮动的前世今生
![](https://img.aspxhome.com/file/UploadPic/20098/19/01-12s.png)
HTML的优化杂记
超越MYSQL,ACCESS复合承载
Google的设计导引
开发Web应用程序的结构化过程
![](https://img.aspxhome.com/file/UploadPic/20096/1/01-47s.png)
修复 jQuery 中 isFunction 方法的 BUG
详述如何提高MySQL中数据装载效率
css中如何使div居中(垂直水平居中)
15款非常有用的前端开发CSS网格(grid system)生成器
![](https://img.aspxhome.com/file/UploadPic/20097/6/grid-layout-generator-by-pagecolumn-14s.jpg)
安装了Office2003补丁之后,access不能用,打不开了
js实现(层,表格)元素圆角的函数
![](https://img.aspxhome.com/file/UploadPic/20081/1/200811164924859s.gif)
用Dreamweaver MX轻松操作表格
![](https://img.aspxhome.com/file/UploadPic/20072/20072311325453s.jpg)
SqlServer表死锁的解决方法分享
![](https://img.aspxhome.com/file/UploadPic/20119/30/2011930115716362s.png)
超轻量级MSXML多功能测试程序
![](https://img.aspxhome.com/file/UploadPic/20095/19/20090513224141384-92s.gif)
谈点关于checkbox的事情
一个不错的js软键盘代码而且移植方便
![](https://img.aspxhome.com/file/UploadPic/up/2007081413364471.jpg)