织梦DedeCMS在自定义表单里加入验证码的方法

作者: jiukeshuju 分类: DEDECMS 发布时间: 2020-10-02 14:34


在很多建站需求中,需要一些额外的表单供前台用户提交。以便于收集、统计、分析及处理更多的数据。比如:在线订单、在线报名等一些常见的互动应用。

  利用织梦内容管理系统(DedeCMS)自带提供的自定义表单功能即可满足大多数的此类需求。

  通过给自定义表单加入验证码的功能,可以防止一些用户恶意提交。

  • 1、先进入DedeCMS后台生成自定义表单。

  • 2、在自定义表单模板中添加验证码代码,如下:  

<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>

   

 

  • 3、在当前页添加JS代码,如下:   

<script type=”text/javascript” language=”javascript”>//验证码 function changeAuthCode(){var num =newDate().getTime();varrand= Math.round(Math.random()*10000);    num = num +rand;    $(‘#ver_code’).css(‘visibility’,’visible’);if($(“#vdimgck”)[0]){        $(“#vdimgck”)[0].src =”../include/vdimgck.php?tag=”+ num;}returnfalse;}</script>

   

 

  • 4、修改订单处理页面,打开网站根目录/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;}}

如果觉得我的文章对您有用,请随意赞赏。您的支持将鼓励我继续创作!