您好,登錄后才能下訂單哦!
這篇文章主要介紹“如何使用ThinkPHP驗證碼”,在日常操作中,相信很多人在如何使用ThinkPHP驗證碼問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”如何使用ThinkPHP驗證碼”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
一、首先需要在控制器中加入驗證碼方法admin/Lib/Action/LoginAction.class.php
知識點:
1、ob_clean函數用途
2、import方法調用think默認類庫
3、Image類buildImageVerify方法使用
代碼如下:
復制代碼 代碼如下:
Public function verify(){
ob_clean();
//ob_clean函數 清空先前輸出
import('ORG.Util.Image');
//import調用的是message/ThinkPHP框架目錄下的擴展包Extend/Library/ORG/Util/中的Image.class.php類文件
Image::buildImageVerify();
//調用buildImageVerify方法生成驗證碼,默認參數為($length=4, $mode=1, $type='png', $width=48, $height=22, $verifyName='verify'),有興趣的朋友可以研究下Image類
}
二、在模板文件中加入驗證碼模塊admin/Tpl/Login/index.html
知識點:
1、驗證碼圖片調用
2、js相關運行流程了解
3、__PUBLIC__常量
在密碼輸入框后加入如下代碼:
復制代碼 代碼如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script type="text/javascript" src="__PUBLIC__/Js/jquery-1.7.2.min.js"></script>
//__PUBLIC__常量可以在頁面加載后,“查看頁面源文件”中找到定義的__PUBLIC__目錄,默認為項目根目錄message下的Public目錄,下面會講解如何自定義__PUBLIC__系統常量
//jquery文件,只有加載了這個文件才可以調用jquery的方法
<script type="text/javascript" src="__PUBLIC__/Js/login.js"></script>
//這里的具體代碼會在下面貼出,其實只是定義了一個change_code函數,也就是更換驗證碼的異步操作(可以在不刷新頁面的情況下更換)
<title>Message Board BackGround</title>
</head>
<body>
<form action="{:U('admin.php/Login/login')}" method="post" name="back_login" >
<h3>簡易后臺登錄系統</h3>
用戶名:<input type='username' name='username' id='username' />
<br />
密碼:<input type='password' name='password' id='password' />
<br />
驗證碼:<input type="code" name="code"/>
//這里需要注意將type設置為code,name命名為code
<img src="{:U('Admin/Login/verify','','')}" id="code"/>
//img標簽下的src就是調用Login控制器中的veryfy方法
//后面的兩個參數留空是必須的,其中第2個沒實際意義,主要是為了第3個參數留空,這樣設置可以取消偽靜態后綴名,否則默認的偽靜態后綴名為html,將會導致無法正常加載圖片
<a href="javascript:void(change_code(this));">看不清</a>
//這里調用了個
<br />
<input type="submit" value="登錄"/>
</form>
</body>
</html>
login.js文件在message/Public/目錄下
文件內容如下:
復制代碼 代碼如下:
verifyURL = 'http://localhost/message/admin.php/Login/verify';
//定義驗證碼路徑
function change_code(obj){
$("#code").attr("src",verifyURL+'/'+Math.random());
//動態生成驗證碼方法,有興趣的朋友可以深入研究下jq方法
return false;
}
另:__PUBLIC__文件定義在message/admin/Conf/config.php
在配置中,加入如下內容,即可改變__PUBLIC__路徑
配置如下:
復制代碼 代碼如下:
//常量相關配置
'TMPL_PARSE_STRING' => array(
'__PUBLIC__' => __ROOT__ . '/' . APP_NAME . '/Public',
//路徑改變為message/admin/Public,刷新頁面,驗證碼依然可以刷新,則表明js生效,也可“查看頁面源文件”
),
到此,關于“如何使用ThinkPHP驗證碼”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。