thinkPHP驗證碼失效的問題

2021-06-27 00:15:55 字數 515 閱讀 9860

閒來無事於是研究一下thinkphp ,在寫乙個註冊頁面在驗證碼的環節卡住,症狀如下:

前台輸入驗證碼,獲取input改變事件,以驗證驗證碼是否輸入正確,做出提示,然後提交,在後台處理的時候再次統一驗證,出錯則註冊失敗,返回,結果前台提示正常,可是一提交則一直提示驗證碼輸入錯誤,dump一下session發現session被清空,可是前台測試一切正常,session也正常,可是就是在這裡給無端清空了,於是就犯鬱悶了,偶一次發現驗證碼輸入正確後,再繼續輸入,session被清空,至此恍然大悟,進入原始碼,發現如下片段:

if($this->authcode(strtoupper($code)) == $secode['verify_code'])

原來check方法會在驗證碼正確後將session清空,而我前台驗證的方法呼叫了它 所以在我驗證成功後是無法再次驗證的,於是在原始碼中新增新的函式 專門用於前台驗證,二這個不能清空session,而且最好在後台處理的時候判斷驗證碼還是用上面的**,驗證完後清理session。

thinkphp驗證碼的使用

在thinkphp中使用驗證碼很容易,只要呼叫thinkphp現有的方法就可以。當然,php的gd庫肯定是要開的。首先,在寫action檔案,如 indexaction.class.php.class indexaction extends action 檢驗驗證碼是否正確 public funct...

ThinkPHP的驗證碼問題

版本3.1.2時,匯入org.util.image之後,怎麼都獲取不到image這個類 不知道什麼原因,查了很多文件,沒解決!果斷公升級,公升級為3.1.3 版本公升級成3.1.3後出現這個問題 call to a member function display on a non object 原 ...

驗證碼總是失效問題

問題 專案的驗證碼一直不正確,怎麼輸入都錯,後來從網上找了各種解決方法,有說 src 會執行兩次載入事件的,後來通過火狐瀏覽器去除錯確實發現有這個問題,如下 不過這個問題還是解決不了,因為不知道用什麼方法來阻止它執行兩次,後來又研究了好久還是不行。定位問題 一位同事看完之後發現每次請求的 jessi...