使用织梦dedecms的自定义表单过程中,自定义表单是非常实用的工具,比如在线留言、提交订单等,但是如何加入验证码,防止恶意提交呢?
1、首先找到自定义表单的模板。这个在后台自定义表单可以看到模板名称。
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代码。 //此段代码是控制步骤2中最后一行代码,其实步骤2中已经加入了点击图片即可切换验证码的功能,可以省略步骤2中的最后一行代码,那么此步骤3.可以省略。
<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; } //vdimgck.php文件是织梦自带的,直接引用即可
return false;
}</script>4、打开网站根目录/plus/diy.php文件, 添加验证代码到第61行左右位置,在服务器进行验证。
$validate = empty($validate) ? '' : strtolower(trim($validate));
$svali = strtolower(GetCkVdValue());
if(($validate=='' || $validate != $svali) && preg_match("/6/",$safe_gdopen))
{ResetVdValue();
ShowMsg('验证码不正确!',-1,0,1000);
exit();}
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号