织梦系统如何给自定义表单加验证码
时间:2014-06-27 | 来源:士人网络 | 关注: 967 次
织梦系统有个自定义表单功能,这个功能默认状况是没有验证码进行表单验证的。这样的自定义表单有两个缺点,一是没有填写任何数据就能提交表单;二是容易被一些注册机恶意提交形成垃圾信息。如何解决这一问题,最好的办法就是给这个自定义表单添加一个验证码。如何给织梦系统(dedecms)自定义表单添加验证码呢?我们不妨按照以下步骤进行操作:
第一步、先进入织梦系统后台,先生成一个自定义表单。(如何生成自定义表单,以及如何把自定义表单放置到自定义表单模板中,请参照相关教程)
第二步、在自定义表单模板中添加验证码代码,如下:
<input name="validate" type="text" id="vdcode" style="text-transform:uppercase;" size="8"/> <img id="vdimgck" align="absmiddle" onClick="this.src=this.src+'?'" style="cursor: pointer;" alt="看不清?点击更换" src="../include/vdimgck.php"/> <a href="javascript:vide(-1);" onClick="changeAuthCode();">看不清? </a>
第三步、在当前页添加JS代码,如下:
<script type="text/javascript" language="javascript"> //验证码 function changeAuthCode() { var num = new Date().getTime(); var rand = Math.round(Math.random() * 10000); num = num + rand; $('#ver_code').css('visibility','visible'); if ($("#vdimgck")[0]) { $("#vdimgck")[0].src = "../include/vdimgck.php?tag=" + num; } return false; } </script>
第四步、修改订单处理页面,打开网站根目录/plus/diy.php文件, 添加验证代码到第61行左右位置。如下:
if(!empty($dede_fields)) { $validate = empty($validate) ? '' : strtolower(trim($validate)); $svali = strtolower(GetCkVdValue()); if(($validate=='' || $validate != $svali) && preg_match("/6/",$safe_gdopen)){ ResetVdValue(); ShowMsg('验证码不正确!',$dede_add,0,1000); exit; }
还有一个地方值得注意,就是最后面的 ShowMsg('验证码不正确!',$dede_add,0,1000); 这一部分,很多相关教程都这样写,但如果这样写,如果填写不正确的验证码弹出错误提示后无法返回到提交页面。因此把 $dede_add,0,1000 用 '-1' 替换掉即可。
相关热词搜索: 织梦系统,自定义表单,验证码
- 上一篇:企业网站制作中网页之间如何协调搭配
- 下一篇:天水士人网络企业网站制作的重点内容