ThinkPHP實(shí)現(xiàn)生成和校驗(yàn)驗(yàn)證碼功能
使用ThinkPHP實(shí)現(xiàn)生成/校驗(yàn)驗(yàn)證碼功能,供大家參考,具體內(nèi)容如下
首先了解父類Verity.class.php(ThinkPHP/Library/Think/Verity.class.php)中的一些函數(shù)
1:check() 校驗(yàn)驗(yàn)證碼是否正確
2:entry()輸出驗(yàn)證碼并把驗(yàn)證碼的值保存的session中
3:authcode() 加密驗(yàn)證碼(此方法在check()方法中被調(diào)用)
控制器生成驗(yàn)證碼代碼:
//驗(yàn)證碼
function verifyImg(){
//驗(yàn)證碼配置
$cfg = array(
'imageH' => 30, // 驗(yàn)證碼圖片高度
'imageW' => 100, // 驗(yàn)證碼圖片寬度
'fontSize' => 15, // 驗(yàn)證碼字體大小(px)
'length' => 4, // 驗(yàn)證碼位數(shù)
'fontttf' => '4.ttf', // 驗(yàn)證碼字體,不設(shè)置隨機(jī)獲取
);
//實(shí)例化Verify類 自動(dòng)調(diào)用構(gòu)造函數(shù),把$cfg信息傳給$config
$verify = new Verify($cfg);
$verify -> entry(); //輸出驗(yàn)證碼
}
前臺(tái)顯示驗(yàn)證碼
控制器校驗(yàn)驗(yàn)證碼(以登陸為例)
//登陸
function login(){
//兩個(gè)邏輯:展示,收集
if (!empty($_POST)) {
$verify = new Verify();
//接收驗(yàn)證碼
$captcha = $_POST['captcha'];
//check()方法校驗(yàn)驗(yàn)證碼
if ($verify->check($captcha)) {
echo "正確";
}else{
echo "錯(cuò)誤";
}
}
//調(diào)用view視圖
$this->display();
}
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- thinkphp5.1驗(yàn)證碼及驗(yàn)證碼驗(yàn)證功能的實(shí)現(xiàn)詳解
- tp5(thinkPHP5框架)captcha驗(yàn)證碼配置及驗(yàn)證操作示例
- ThinkPHP5.0框架驗(yàn)證碼功能實(shí)現(xiàn)方法【基于第三方擴(kuò)展包】
- thinkPHP5.0框架驗(yàn)證碼調(diào)用及點(diǎn)擊圖片刷新簡(jiǎn)單實(shí)現(xiàn)方法
- thinkPHP實(shí)現(xiàn)的驗(yàn)證碼登錄功能示例
- thinkphp3.2實(shí)現(xiàn)在線留言提交驗(yàn)證碼功能
- Thinkphp3.2實(shí)用篇之計(jì)算型驗(yàn)證碼示例
- thinkPHP中驗(yàn)證碼的簡(jiǎn)單實(shí)現(xiàn)方法
- ThinkPHP5&5.1實(shí)現(xiàn)驗(yàn)證碼的生成、使用及點(diǎn)擊刷新功能示例
相關(guān)文章
PHP設(shè)計(jì)模式(一)工廠模式Factory實(shí)例詳解【創(chuàng)建型】
這篇文章主要介紹了PHP設(shè)計(jì)模式 工廠模式Factory,結(jié)合實(shí)例形式詳細(xì)分析了工廠模式的基本概念、原理、實(shí)現(xiàn)方法與操作注意事項(xiàng),需要的朋友可以參考下2020-05-05
PhpStorm的使用教程(本地運(yùn)行PHP+遠(yuǎn)程開發(fā)+快捷鍵)
這篇文章主要介紹了PhpStorm的使用教程(本地運(yùn)行PHP+遠(yuǎn)程開發(fā)+快捷鍵),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-03-03
ThinkPHP入口文件設(shè)置及相關(guān)注意事項(xiàng)分析
這篇文章主要介紹了ThinkPHP入口文件設(shè)置及相關(guān)注意事項(xiàng),以注釋的形式詳細(xì)分析了入口文件設(shè)置時(shí)相關(guān)設(shè)置項(xiàng)的含義與設(shè)置技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2014-12-12
PHP讀取mssql json數(shù)據(jù)中文亂碼的解決辦法
PHP及網(wǎng)頁使用UTF-8編碼,數(shù)據(jù)庫是sql server2008,使用默認(rèn)編碼,當(dāng)讀取數(shù)據(jù)庫數(shù)據(jù)時(shí),使用php自帶的json_encode()返回到前端,結(jié)果中文不顯示。下面腳本之家小編給大家介紹PHP讀取mssql json數(shù)據(jù)中文亂碼的解決辦法,需要的朋友一起學(xué)習(xí)2016-04-04
Thinkphp 框架配置操作之動(dòng)態(tài)配置、擴(kuò)展配置及批量配置實(shí)例分析
這篇文章主要介紹了Thinkphp 框架配置操作之動(dòng)態(tài)配置、擴(kuò)展配置及批量配置,結(jié)合實(shí)例形式分析了Thinkphp配置操作中動(dòng)態(tài)配置、擴(kuò)展配置及批量配置基本原理、實(shí)現(xiàn)方法與相關(guān)注意事項(xiàng),需要的朋友可以參考下2020-05-05
Zend Framework教程之Zend_Db_Table表關(guān)聯(lián)實(shí)例詳解
這篇文章主要介紹了Zend Framework教程之Zend_Db_Table表關(guān)聯(lián)用法,結(jié)合實(shí)例形式較為詳細(xì)的分析了Zend_Db_Table表關(guān)聯(lián)的定義,實(shí)現(xiàn)方法與相關(guān)注意事項(xiàng),需要的朋友可以參考下2016-03-03
ThinkPHP6.0如何利用自定義驗(yàn)證規(guī)則規(guī)范的實(shí)現(xiàn)登陸
這篇文章主要介紹了ThinkPHP6.0如何利用自定義驗(yàn)證規(guī)則規(guī)范的實(shí)現(xiàn)登陸,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12
PHPMailer郵件類利用smtp.163.com發(fā)送郵件方法
利用smtp.163.com 發(fā)送郵件(本地?zé)o需服務(wù)器)2008-09-09

