欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

ThinkPHP5.1驗(yàn)證碼功能實(shí)現(xiàn)的示例代碼

 更新時(shí)間:2020年06月08日 10:57:55   作者:moTzxx  
這篇文章主要介紹了ThinkPHP5.1驗(yàn)證碼功能實(shí)現(xiàn)的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

۩ 背景

ThinkPHP5.1 已經(jīng)出現(xiàn)很久了,最近有所接觸,下面介紹一下常用的第三方驗(yàn)證碼功能的使用。

環(huán)境

  • 框架版本: ThinkPHP5.1.2
  • 運(yùn)行環(huán)境: CentOS7.2、phpStudy2017、Nginx

♜ 功能開(kāi)發(fā)

1).引入第三方擴(kuò)展包

進(jìn)行 TP5 的開(kāi)發(fā),Composer 的使用會(huì)成為重要技能,以 windows 為例子,輸入命令:

composer require topthink/think-captcha

完成上述操作,會(huì)在以下目錄中出現(xiàn) captcha 的擴(kuò)展包

..\vendor\topthink\think-captcha

2).前端設(shè)置

在前端頁(yè)面需要顯示驗(yàn)證碼的位置,補(bǔ)充 {:captcha_img()} 即可,個(gè)人代碼舉例如下:

<p class="pass-form-item">
  <label class="pass-label">驗(yàn)證碼</label>
  <input type="text" name="verifyCode" class="pass-text-input " placeholder="請(qǐng)輸入驗(yàn)證碼">
  <div>{:captcha_img()}</div>
</p>

3). captcha 擴(kuò)展包代碼優(yōu)化

如果按照上述操作,顯示的驗(yàn)證碼圖片并不能點(diǎn)擊刷新,可自己根據(jù)需求進(jìn)行刷新功能設(shè)計(jì);或者,建議進(jìn)行下面的代碼優(yōu)化:

function captcha_img($id = "")
{
 $js_src = "this.src='".captcha_src()."'";
 return '<img src="' . captcha_src($id) . '" title="點(diǎn)擊更新驗(yàn)證碼" alt="點(diǎn)擊更新驗(yàn)證碼" οnclick="'.$js_src.'" />';
 //return '![](' . captcha_src($id) . ')';
}

打開(kāi) ..\vendor\topthink\think-captcha\src\helper.php 文件,替換上面的 captcha_img() 方法代碼.

此時(shí)的驗(yàn)證碼圖片即可實(shí)現(xiàn)點(diǎn)擊 實(shí)時(shí)刷新 功能.

【注意:2020-02-26】

最近發(fā)現(xiàn),直接在CSDN上復(fù)制上面的代碼,“onclick” 粘貼后不是正常的代碼,注意 “o”字母,建議有問(wèn)題時(shí)可手打一下即可!

4). 后臺(tái)代碼驗(yàn)證

根據(jù)前端請(qǐng)求而來(lái)的 verifyCode 數(shù)據(jù),調(diào)用 helper.php 中的 captcha_check() 方法,進(jìn)行驗(yàn)證。

 if(request()->isPost()){
   $data = input('post.');
   if(!captcha_check($data['verifyCode'])) {
    // 校驗(yàn)失敗
    $this->error('驗(yàn)證碼不正確');
   }
}

♞ 提示

官方文檔—— ThinkPHP5.1 驗(yàn)證碼指導(dǎo)

  • 建議閱讀 ..\vendor\topthink\think-captcha\src\helper.php 文件,及 Captcha.php ,可以進(jìn)行樣式的自定義.
  • 如果前端 {:captcha_img()} 有傳值 id,那么后臺(tái) captcha_check() 驗(yàn)證也需要相應(yīng)的 id 參數(shù)區(qū)分。
  • 驗(yàn)證結(jié)果,普遍使用 ajax 請(qǐng)求,以滿足用戶順暢的體驗(yàn).

到此這篇關(guān)于ThinkPHP5.1驗(yàn)證碼功能實(shí)現(xiàn)的示例代碼的文章就介紹到這了,更多相關(guān)ThinkPHP5.1驗(yàn)證碼內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論