TP5框架自带验证码模块,不过需要自行安装think-captcha扩展包,而think-captcha扩展包需要composer安装。
1、安装composer
因为composer安装包下载较慢,这里提供下windows下的composer安装包,有需要的自提:
链接:https://pan.baidu.com/s/1EPt1vOo2WHFVkB-bbwch5A
提取码:o30s
2、安装think-captcha扩展
composer下载安装完成之后,安装think-captcha扩展(可能会比较慢,耐心等待即可)
composer require topthink/think-captcha=1.*
注:以上命令要在网站根目录下运行
安装完成后在\vendor\topthink\think-captcha\目录下:
3、验证码生成及显示
简单调用:
<img src="{:captcha_src()}" alt="captcha" />
点击更换验证码:
<img onclick="this.src='{:captcha_src()}?'+Math.random()" src="{:captcha_src()}" width="30%" height="40" alt="验证码" />
4、验证码验证
验证用户输入的验证码是否与服务端生成的验证码一致:
验证方法:
public function check_verify($code, $id = ""){ $verify = new \think\captcha\Captcha();return $verify->check($code, $id);
}
调用验证方法验证
if(!$this->check_verify($verify)){ echo 4; die; //验证码不一致
}
5、注:
1.官方的5.0
版本的think-captcha扩展库版本号都是1.*
,2.0
版本均为ThinkPHP5.1
版本专用;
2.需要开启URL路由;
3.如果出现验证码不显示的问题,需要修改\vendor\topthink\think-captcha\src下的CaptchaController.php文件修改为如下即可
就是在验证码控制器,用ob_clean();清空缓存就可以了