当前位置:新闻资讯

织梦cms留言板添加验证码的方法

日期:2021-01-08 14:13:58 作者:http://www.zhanmanet.com 浏览量:0
  制作网站时候,我们常常会用到留言板功能,但是织梦自带留言板样式单一,通常我们会使用自定义表单来代替。然而,因为没有验证功能,网站留言板就成了垃圾广告收集器,每天都会有成百上千条垃圾留言。那我们如何添加验证来避免此事呢?请看下面
  
  Dedecms版本是Dedecms  V5.7,可以参考一下。
  
  一、修改自定义表单控制文件
  
  1.打开/plus/diy.php文件,头部随机位置添加(网站开通了会员功能模块必加,但如果未开通会员功能,则跳过此步骤);
  
  require_once(DEDEINC.'/membermodel.cls.php');
  
  2.添加上述代后,找到代
  
  if(!empty($dede_fields))
  
  {
  
  大约59~60行。
  
  下面添加

    $svali = GetCkVdValue();
    if (preg_match("/1/", $safe_gdopen)) {
        if (strtolower($vdcode) != $svali || $svali == '') {
            ResetVdValue();
            ShowMsg('验证错误!', '-1');
            exit();
        }
    }
  
  修改后保存文件上传。
  
  二、自定义表单模板页面修改
  
  1.导入jQuery文件(如果模板中引用了jQuery文件,则忽略此步骤。)
  
  2.需要插入验证地方添加

  <input id="vdcode"style="width: 50px; text-transform: uppercase;" type="text" name="vdcode" />
  
  <img id="vdimgck" style="cursor: pointer;" onclick="this.src=this.src+'?'" src="/include/vdimgck.php" align="absmiddle" />
  
  3.模板底部或头部添加js代,判断验证正确性:

<script type="text/javascript">
    // <![CDATA[
    $ = jQuery;
    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>
  
  完成后进行测试,效果如下:
 
  
  通过以上步骤就可以自定义表单中就添加验证功能,垃圾广告留言再也不能被恶意提交了,栈网络作为昆山网站建设佼佼者,为您提供全方位网络服务。