織夢dedecms網(wǎng)站給自定義表單加dede模板自帶驗證碼的方法。
有時候,我們因為需要給dede網(wǎng)站的自定義表單添加驗證碼,防止惡意填寫表單提交。
我們可以用以下的方法來實現(xiàn):
首先,我們要找到 /plus/diy.php 這個文件
在頭部引入文件:
復(fù)制代碼
require_once(DEDEINC.'/membermodel.cls.php');
然后找到
復(fù)制代碼
elseif($do == 2)
{ 在這個地方加入代碼塊
//驗證碼驗證
$svali = GetCkVdValue();
if(preg_match("/1/",$safe_gdopen)){
if(strtolower($vdcode)!=$svali || $svali=='')
{
ResetVdValue();
ShowMsg('驗證碼錯誤!', '-1');
exit();
}
}
修改好后保存一下文件。
第二步:在使用驗證碼的自定義表單靜態(tài)頁面中插入代碼塊
<input type="text" class="code" style="width:50px;text-transform:uppercase;" id="vdcode" name="vdcode" /> <img id="vdimgck" align="absmiddle" onclick="this.src=this.src+'?'" style="cursor:pointer;" alt="看不清?點擊更換" src="/include/vdimgck.php" /> 看不清?
在這個靜態(tài)頁面里還得引用JQuery
再加入 JS代碼塊
<script type="text/javascript">
$ = 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>
好了,現(xiàn)在試一試,是不是可以實現(xiàn)驗證碼的提交了?一個簡單的dedecms自定義表單dede模板自帶驗證碼的功能就實現(xiàn)了
一般會遇到一個第172行錯誤,是因為少了一個“}“只需要在172行加一個就OK了