您当前的位置:主页 > 教程合集 > DedeCMS网站首页DedeCMS

DedeCMS自定义表单中添加验证码的方法

发布时间:2016-03-08编辑:余斗阅读:(0)字号:
    在用DedeCMS的时候,通过自定义表单来做在线留言,这个确实比织梦自带的留言簿模块要方便,虽然在以前余斗说过DedeCMS留言簿插件二次开发浅析,但是实现起来还是诸多bug。所以还是用Dede的自定义表单来实现比较靠谱,但是使用自定义表单之后,因为没有加验证码,导致一段时间内被人恶意攻击,填写了几千个留言,头都大了,只好去数据库中批量删除。此时之后,余斗就加深了这个验证码的认识,不论什么样的表单,一定要记得加上验证码。 今天,余斗就说说如何在DedeCMS的自定义表单中添加验证码,虽然在网上有很多教程,但是测试了大部分,发现都不适用,余斗还是自己研究一下,终于自己搞定。余斗测试的DedeCMS版本为DedeCMS V5.7 SP1,大家可以参考一下。 一、修改自定义表单控制文件 1.打开/plus/diy.php文件,在头部随意位置加上代码(网站开通了会员功能模块必加,没有开通会员功能则略过此步):

    require_once(DEDEINC.'/membermodel.cls.php');
     
    2.加完上述代码之后,查找代码:

    elseif($do == 2)
            {
     
    在下面加上代码:

      $svali = GetCkVdValue();
                      if(preg_match("/1/",$safe_gdopen)){
                              if(strtolower($vdcode)!=$svali || $svali=='')
                              {
                                      ResetVdValue();
                                      ShowMsg('验证码错误!', '-1');
                                      exit();
                              }
                        }
     
    加上之后的代码: DedeCMS自定义表单中添加验证码的方法 修改之后保存文件并上传。 二、自定义表单模版页修改 1.引入jQuery文件(如果模版中已经引用了jQuery文件,则忽略此步。):

    <script language="javascript" type="text/javascript" src="{dede:global.cfg_cmsurl/}/js/jquery.js"></script>
     
    jQuery下载:jQuery.js文件 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>
     
    完成后,测试一下,效果如下图: DedeCMS自定义表单中添加验证码的方法 是不是完美实现了自定义表单中添加验证码功能?妈妈再也不怕我的网站被恶意提交表单了!
关键字词DedeCMS自定义表单验证码
余斗余斗
  1. 转载请注明:DedeCMS自定义表单中添加验证码的方法
  2. 版权声明:本站原创文章,由发表在DedeCMS分类下,于2016-03-08最后更新
分享两款DedeCMS列表页专用分页样式CSS代码
DedeCMS自定义表单出现“数据校验证不对,程序
手机扫一扫 随身带着看
鸿运国际手机登录首页