織夢自定義表單提交,並添加驗證碼判斷


 

 

 

在網站建設中,部分網站可能需要在前台收集用戶、訪客提交的一些數據信息,例如學校或培訓機構網站的在線報名、產品網站的在線訂單等,對於使用織夢dedecms建站程序的站長,可以通過dedecms提供的自定義表單功能進行制作,下面以制作“在線報名”表單為例子講解下如何制作dedecms自定義表單並在前台調用!為了避免評論機器人之類的軟件工具提交垃圾無用的信息,給織夢自定義表單添加驗證碼功能是非常有必要的。dedecms自定義表單默認沒有驗證碼功能,但是站長可以通過修改程序源文件給表單添加自定義表單驗證碼。

dedecms自定義表單制作步驟:

1、在“后台——核心”部分的“頻道模型”選項卡下找到並點擊“自定義表單”選項:

進入“自定義表單管理”界面后點擊“增加新的自定義表單”:

進入新增自定義表單設置界面,設置好相關的參數后,點擊確定:

保存確定之后,返回“自定義表單管理”界面,在剛剛創建的表單后面,點擊“更改”圖標,進入編輯界面清加表單字段:

在表單編輯界面,點擊“添加新字段”,然后根據表單需求填寫相關的參數,然后點擊確定:

根據中文提示輸入各項參數:

 

 提示:如果有多個表單字段,只需要重新“第四、第五”步驟即可

表單調用:

1、點擊更改圖標,把該表單的“前台列表和內容頁公開?”設置為“完全公開”或者“公開審核過的”,點擊確定;

2、在自定義表單管理界面,點擊該表單的“前台預覽”:

 

 在預覽界面中,點擊右上角的“發布信息”:

 

 審查源代碼,這時就可以看見剛剛創建的自定義表單字段“姓名”,找到該表單的代碼,並復制下來:(ps:一定要復制全  從form開始到form結束)

把復制的代碼添加到想要調用表單的位置的對應模板即可。

 

添加驗證碼驗證

在頁面中添加驗證碼相關的表單,參考上一步審查源代碼的驗證碼

<input name="validate" type="text" id="vdcode" style="text-transform:uppercase;" size="8"/> 
<img id="vdimgck" class="yzmimg" align="absmiddle" onClick="this.src=this.src+'?'" style="cursor: pointer;" alt="看不清?點擊更換" src="../include/vdimgck.php"/> 
<a href="javascript:vide(-1);" onClick="changeAuthCode();">看不清? </a>

 

在網頁底部</body>前添加以下代碼:

<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>

 

在網站安裝目錄下編輯plus/diy.php文件,找到代碼:

$fieldarr = explode(';', $dede_fields);

在這句代碼上面添加以下代碼:
//新增驗證碼
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>';
        } 
    }

 

好了到這就算把表單提交做好了

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM