ThinkPHP實現(xiàn)生成和校驗驗證碼功能
更新時間:2017年04月28日 11:51:51 作者:下頁、再停留
這篇文章主要為大家詳細介紹了ThinkPHP實現(xiàn)生成和校驗驗證碼功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下
使用ThinkPHP實現(xiàn)生成/校驗驗證碼功能,供大家參考,具體內容如下
首先了解父類Verity.class.php(ThinkPHP/Library/Think/Verity.class.php)中的一些函數(shù)
1:check() 校驗驗證碼是否正確
2:entry()輸出驗證碼并把驗證碼的值保存的session中
3:authcode() 加密驗證碼(此方法在check()方法中被調用)
控制器生成驗證碼代碼:
//驗證碼 function verifyImg(){ //驗證碼配置 $cfg = array( 'imageH' => 30, // 驗證碼圖片高度 'imageW' => 100, // 驗證碼圖片寬度 'fontSize' => 15, // 驗證碼字體大小(px) 'length' => 4, // 驗證碼位數(shù) 'fontttf' => '4.ttf', // 驗證碼字體,不設置隨機獲取 ); //實例化Verify類 自動調用構造函數(shù),把$cfg信息傳給$config $verify = new Verify($cfg); $verify -> entry(); //輸出驗證碼 }
前臺顯示驗證碼
復制代碼 代碼如下:
<!--分組/控制器/方法--> <img src="<{$smarty.const.__CONTROLLER__}>/verifyImg" onclick = "this.src='<{$smarty.const.__CONTROLLER__}>/verifyImg/'+Math.random()" alt="驗證碼" />
控制器校驗驗證碼(以登陸為例)
//登陸 function login(){ //兩個邏輯:展示,收集 if (!empty($_POST)) { $verify = new Verify(); //接收驗證碼 $captcha = $_POST['captcha']; //check()方法校驗驗證碼 if ($verify->check($captcha)) { echo "正確"; }else{ echo "錯誤"; } } //調用view視圖 $this->display(); }
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
Windows下部署Apache+PHP+MySQL運行環(huán)境實戰(zhàn)
本來嘛,部署PHP沒什么復雜,找各種版本著實頭疼了一下。2012-08-08