为织梦Dedecms自定义表单添加验证码的功能 增加表单安全验证

时间:2021-11-24
类别:教程 - CMS教程

相信用过dedecms自定义表单的站长朋友们都知道,dedecms自定义表单提交没有验证码功能,这样非常不安全,所以我们需要将它修改一下,将验证码添加进去。

具体操作方法如下:

第一步、先进入DedeCMS后台添加自定义表单。

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

  1. <input name="validate" type="text" id="vdcode" style="text-transform:uppercase;" size="8"/> 
  2. <img id="vdimgck" align="absmiddle" onClick="this.src=this.src+'?'" style="cursor: pointer;" alt="看不清?点击更换" src="/include/vdimgck.php"/>  
  3. <a href="javascript:vide(-1);" onClick="changeAuthCode();">看不清?</a> 

第三步、在自定义表单模板中添加JS代码,如下:

  1. <script type="text/javascript" language="javascript"
  2. //验证码 
  3. function changeAuthCode() { 
  4.     var num =     new Date().getTime(); 
  5.     var rand = Math.round(Math.random() * 10000); 
  6.     num = num + rand; 
  7.     $('#ver_code').css('visibility','visible'); 
  8.     if ($("#vdimgck")[0]) { 
  9.         $("#vdimgck")[0].src = "/include/vdimgck.php?tag=" + num; 
  10.     } 
  11.     return false;    
  12. </script> 

第四步、修改自定义表单处理页面,打开网站根目录/plus/diy.php文件, 添加验证代码到第61行左右位置。如下:

  1. if(!emptyempty($dede_fields)){ 
  2.         $validate = emptyempty($validate) ? '' : strtolower(trim($validate)); 
  3.         $svali = strtolower(GetCkVdValue()); 
  4.         if(($validate=='' || $validate != $svali) && preg_match("/6/",$safe_gdopen)){ 
  5.                ResetVdValue(); 
  6.                ShowMsg('验证码不正确!',$dede_add,0,1000); 
  7.                exit
  8.         } 

以上就是为织梦Dedecms自定义表单添加验证码的功能的方法与步骤,再进一步自定CSS美化即可。

    收藏