婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 網站建設 > 建站知識 > 織夢驗證碼參數設置分析

織夢驗證碼參數設置分析

POST TIME:2020-04-11 21:44

所有的系統為了安全起見,都設置驗證碼或驗證問題,這樣不僅可以防止黑客攻擊,更重要的是一個系統標準標志,實力的象征,這樣說可能感覺有點夸張,但是不管怎么樣驗證問題,確實是一個系統所必須的。織夢里面的幾乎所有用戶提交的數據都有驗證碼或驗證問答,這樣可以對系統作一個安全處理,但是,有時候,我們自己學習用,并不需要這個驗證問題。本教程主要講解如何設置驗證問題,以及驗證的原理分析。
第一個問題,如何去掉驗證碼?這個簡單只要在后臺:系統——>驗證安全設置里面,取消復選框即可,在這里我們不僅發現,所有與驗證有關的設置都在這里了,如下圖所示。
織夢后臺這個小功能,只是對驗證進行配置,當我們選中或取消某個驗證,例如,我們取消會員投稿這個驗證,點擊保存后,當注冊會員,在發布內容后,點提交時,就不用填寫驗證碼了,如果取消驗證問答,那么,用戶發有會員中心發布內容后,也不用去驗證。
原理分析:
如上圖所示,驗證碼參數設置里面所有東西,當我們點擊確定后,就會被提交到后綴文件dede/sys_safe.php 里面,在這個文件里面,最核心的就是里面的這三行代碼:
$fp = fopen($safeconfigfile, "w") or die("寫入文件 $safeconfigfile 失敗,請檢查權限!");
fwrite($fp, $configstr);
fclose($fp);
這三行代碼上面的,全是對于提交過來的內容進行處理后,放入變量$configstr里面了,當執行到這三行代碼時,首先打開文件 $safeconfigfile = data/safe/inc_safe_config.php,然后,把我們在“驗證碼參數設置”所有配置內容,都寫入到文件inc_safe_config.php這里面。這樣當我們在前臺或后臺或者其它地方,用是不是需要驗證碼問題時,我們只需要,判斷一下在inc_safe_config.php這個文件里面,是否有配置選擇,如果有,則顯示驗證信息,這個判斷一般用正則匹配系統函數preg_match(正則,字符串)來進行的。
我們舉一例子來模似這一過程,然后,再做總結。
例如,我們以會員投稿是否開啟為例,當我們選中會員投稿,即開啟會員在投稿時的驗證,然后,點確實,這時我們打開配置后的文件inc_safe_config.php,發現第一行$safe_gdopen = '1,2,3,4,5,7';這個里面中的數字3,就是會
員投稿,這個與后臺的“驗證碼參數設置”,一一對應,當safe_gdopen=3時,表示,開啟了會員在投稿時,需要驗證,否則驗證不顯示。
現在進入會員中心,當點擊發布文章時,發現下面有了驗證碼,如下圖所示。
我們進入文件article_add.htm里面,找到這段代碼, if(preg_match("/3/",$safe_gdopen)),正是這段代碼才使得會員投稿時,顯示或不顯示會員驗證功能。當我們在“驗證碼參數設置” 里面,取消會員投稿后,我們會發現,前
臺會員投稿消失。其它的驗證原理都一樣,這里不一一分析了。
總結:當我們設計配置文件時,可以參照織夢這種方法,織夢后綴所有的配置方式都差不多,跟這個類似——設計配置模板,然后,寫一個php文件處理這個配置模板里面接收到的參數,然后,把這些參數,通過系統函數fopen()打開配置文件,通過fwrite 寫入這些配置參數,然后,關閉這個文件,這樣,當我們在后臺配置后,就可以實時通過這三個系統函數,進行動態寫入操作,讓這個文件與我們后臺配置的參數保持一致,這樣我們在前臺或后臺,或者其它地方,只要把配置文件引入,然后,判斷一下我們在后臺配置的值有沒有,若有則需要驗證,否則不驗證。
其實,織夢后臺里面的所有,配置,例如,系統——>系統基本參數里面,所以的,都是以這種方式,來配置的,以后我們進行織夢二次開發,或自己進行系統框架開發都可以對這個小功能進行參考。


收縮
  • 微信客服
  • 微信二維碼
  • 電話咨詢

  • 400-1100-266
主站蜘蛛池模板: 辉县市| 高州市| 五寨县| 新疆| 福州市| 偏关县| 镇原县| 富宁县| 惠东县| 太湖县| 贞丰县| 澄迈县| 泊头市| 洛扎县| 辽宁省| 磐安县| 青神县| 金沙县| 眉山市| 景德镇市| 江安县| 湄潭县| 玉山县| 泰安市| 县级市| 渝中区| 静乐县| 林周县| 绍兴县| 元朗区| 松溪县| 山东| 武陟县| 夏河县| 瑞昌市| 乐安县| 勃利县| 达孜县| 化州市| 湘潭县| 锡林郭勒盟|