織夢DedeCMS自定義表單中添加驗證碼的方法

織夢DedeCMS自定義表單中添加驗證碼的方法

瀏覽次數:

作者:管理員

來源: 邈瀚云

發布時間:2019-08-12 09:28

內容簡介:在用DedeCMS的時候,通過自定義表單來做在線留言,這個確實比織夢自帶的留言簿模塊要方便,但是實現起來還是諸多bug。所以還是用Dede的自定義表單來實現比較靠譜,但是使用自定義表單之后,因為沒有加驗證碼,導致一段時間內被人惡意攻擊,填寫了幾千個留言,頭都大了,只好去數據庫中批量刪除。

  • 文章內容
  • 相關內容

在用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();
                          }
                    }

修改之后保存文件并上傳。

二、自定義表單模版頁修改

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自定義表單中添加驗證碼的方法

是不是完美實現了自定義表單中添加驗證碼功能?媽媽再也不怕我的網站被惡意提交表單了!


聲明:本文文字、圖片等素材除標明原創外均采集于網絡,如有侵權,請及時告知我們,我們將在最短的時間內刪除。
  • 667點擊
    經常有織夢用戶站長咨詢AB模板網:在做網站尤其是做企業網站的時候總是會發現調用文章不合適的事情發生,調用的文章的關鍵詞總是沒有我們想要的。 比如我們網站里有很多文章中含有“織夢技術,dede”的詞,那么想在網站首...
  • 620點擊
    這是一個菜鳥站長很困惑的問題,如何讓首頁地址中不顯示index.html呢?我們先來看一下顯示的效果圖。 在上圖中,當我們輸入網址:www.adminbuy.cn 后,頁面打開時,域名網址的后邊右斜杠增加一...
  • 494點擊
    織夢是目前使用最多的cms,其良好的搜索引擎優化功能使得很多在建設企業站的時候都使用織夢cms, 對于織夢很多有利于優化的方面我們比較熟悉的就有織夢的tag標簽,tag標簽的功能就是讓有一些相同關鍵詞的網站可以得以聚合,...
  • 595點擊
    織夢默認只允許上傳 jpg,gif,png 格式的圖片文件,如果想要上傳ico圖標格式文件或者其他格式圖片文件需要做如下幾步 1.后臺-系統-系統基本參數-附件設置-圖片瀏覽器文件類型 添加 |ico 如圖,注意有個 | 豎線 2.打開 /include/dialog/se...
  • 544點擊
    兩步搞定dedecmsv5.7版本的tag標簽限制12字節,dedecms5.7版本和以往的版本不一樣,修改方法也不一樣,具體做法如下: 一、點擊“系統”——“SQL命令行工具”在輸入框內輸入以下2行,然后確定即可。 alter table `dede_taglist` change `tag...
  • (^ω^)MG东方珍兽app 爱玩棋牌免费下载我 官方两波中特 甘肃11选5数据分析 山西快乐十分稳赚技巧 腾讯分分彩采集口 打麻将赌博害了我一生 星力捕鱼平台9代 体彩排列五近15期开奖结果 6十1开奖结果查询今天 江苏7位数专家预测号 36游戏大厅安卓版下载 天天乐棋牌游戏下载官网 移动棋牌2官网手机版 掌心福州麻将正式版下载 安徽快3开奖官网 下载重庆快乐十分助手