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();
});

这样就实现了验证码的验证功能,是不是非常简单?

猜你喜欢

转载自blog.csdn.net/pan_yuyuan/article/details/81947804