1.页面端引入
{:captcha_img()}
或者
<img src="{:captcha_src()}" alt="">
点击自动刷新
<img src="{:captcha_src()}" alt="" onclick="this.src='{:captcha_src()}' ">
2.控制器接收并验证
// 验证验证码
if (captcha_check($data['valicode'])) {
$this->success("验证码正确");
}else{
$this->error("验证码错误");
}
3.自定义配置项 C:\xampp\htdocs\tp\tp5\application 下的config.php文件末尾追加
//分页配置
...
// 应用配置:验证码
'captcha' => [
/*验证码字符集合*/
'codeSet' => '123456789',
/*切换为中文验证码*/
'useZh' => true,
/*中文验证字符集合*/
'zhSet' => '你好',
/*验证码的位数*/
'length' => 4,
],
tp5源码系统里的验证文件C:\xampp\htdocs\tp\tp5\vendor\topthink\think-captcha\src 下的captcha.php原始配置项
登陆错误后,返回页面后验证码没有自动刷新问题解决:img元素添加id="valicode",在body里 onload调下captcha()函数
function captcha() {
var captcha = document.getElementById('valicode');
captcha.src = '{:captcha_src()}?' + 'rand=' + Math.random();
}