dedecms教程:自定义表单添加验证码功能

[复制链接]
发表于 2015-4-22 04:43:50 | 显示全部楼层 |阅读模式
为了避免评论机器人之类的软件工具提交垃圾无用的信息,给织梦自定义表单添加验证码功能是非常有必要的。dedecms自定义表单默认没有验证码功能,但是站长可以通过修改程序源文件给表单添加自定义表单验证码,然后运用到织梦模板中是非常有用的!
        操作步骤:
         
        1、在网站安装目录下编辑plus/diy.php文件,找到代码:
         
        $fieldarr = explode(';', $dede_fields);
         
        2、在这句代码上面添加以下代码:
         
        //新增验证码 by www.ziyuanku.cc
        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);
        echo '<script language="javascript">history.go(-1);</script>';
        }
        }
        //end
         
        3、保存后,在表单代码里添加以下代码:
         
        <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>
         
        4、在网页底部</body>前添加以下代码:
         
        <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>
        5、添加完成之后,重新生成页面就可以了。
发表于 2015-7-12 19:13:34 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|资源库论坛 ( 闽ICP备14020703号-1 )

GMT+8, 2018-7-22 05:33

快速回复 返回顶部 返回列表