1. 程式人生 > 程式設計 >ThinkPHP5&5.1實現驗證碼的生成、使用及點選重新整理功能示例

ThinkPHP5&5.1實現驗證碼的生成、使用及點選重新整理功能示例

本文例項講述了ThinkPHP5&5.1實現驗證碼的生成、使用及點選重新整理功能。分享給大家供大家參考,具體如下:

驗證碼現在是使用者登入、支付等很多環節的必備元素,ThinkPHP5&5.1給我們提供了驗證碼的生成方式,也是非常的簡單,在這裡寫一個完整的驗證碼驗證的使用方法,供大家參考。

前臺使用者在登入時候需要驗證碼驗證才能登入。首先使用Composer安裝think-captcha擴充套件包:

composer require topthink/think-captcha

在需要顯示驗證碼的地方:

<tr>
 <th>請輸入驗證碼:</th>
 <td>
  <input type="text" name="captcha" class="inp01"/>
  <img src="{:url('index/login/verify')}" alt="驗證碼載入中" id="captcha"/>
 </td>
</tr>

其中verify是生成驗證碼的方法:

public function verify()
{
  $config =  [
    // 驗證碼字型大小
    'fontSize'  =>  15,// 驗證碼位數
    'length'   =>  3,// 關閉驗證碼雜點
    'useNoise'  =>  false,];
  $captcha = new \think\captcha\Captcha($config);
  return $captcha->entry();
}

其中$config是驗證碼的配置項,具體有哪些配置內容可以參考手冊。

使用Ajax或者jquery-validate進行驗證碼的驗證,也可以提交以後進行驗證:

public function checkcapcha()
{
  $captcha = new \think\captcha\Captcha();
  if( !$captcha->check(input('post.captcha')))
  {
   return false;
  }else{
    return true;
  }
}

為了實現點選驗證碼重新整理的功能,還要寫js程式碼:

$("#captcha").click(function(event) {
  this.src = "{:url('index/login/verify')}?"+Math.random();
});

這樣就實現了驗證碼的驗證功能,是不是非常簡單?

更多關於thinkPHP相關內容感興趣的讀者可檢視本站專題:《ThinkPHP入門教程》、《thinkPHP模板操作技巧總結》、《ThinkPHP常用方法總結》、《codeigniter入門教程》、《CI(CodeIgniter)框架進階教程》、《Zend FrameWork框架入門教程》及《PHP模板技術總結》。

希望本文所述對大家基於ThinkPHP框架的PHP程式設計有所幫助。