内容简介:TP5 验证码功能实现
ThinkPHP5.0 已经很久了,最近有所接触,下面介绍一下常用的第三方验证码功能的使用。
功能开发
1).引入第三方扩展包
进行 TP5 的开发,Composer 的使用会成为重要技能
以windows为例子,输入命令:
composer require topthink/think-captcha
完成上述操作,会在以下目录中出现 captcha 的扩展包
../vendor/topthink/think-captcha
2).前端设置
在前端页面需要显示验证码的位置,补充 {:captcha_img()} 即可,个人代码举例如下:
<p class="pass-form-item"> <label class="pass-label">验证码</label> <input type="text" name="verifyCode" class="pass-text-input " placeholder="请输入验证码"> <div>{:captcha_img()}</div> </p>
效果展示参考
3).captcha 扩展包代码优化
如果按照上述操作,显示的验证码图片并不能点击刷新,可自己根据需求进行刷新功能设计;或者,建议进行下面的代码优化:
function captcha_img($id = "") { $js_src = "this.src='".captcha_src()."'"; return '<img src="' . captcha_src($id) . '" alt="点击更新验证码" onclick="'.$js_src.'" />'; //return ' . ')'; }
打开 ../vendor/topthink/think-captcha/src/helper.PHP 文件,替换上面的 captcha_img() 方法代码.
此时的验证码图片即可实时刷新.
4).后台代码验证
根据前端请求而来的 verifyCode 数据,调用 helper.PHP 中的captcha_check() 方法,进行验证。
if(request()->isPost()){ $data = input('post.'); if(!captcha_check($data['verifyCode'])) { // 校验失败 $this->error('验证码不正确'); } }
提示
建议阅读 ../vendor/topthink/think-captcha/src/helper.PHP 文件,及 Captcha.PHP ,可以进行样式的自定义.
如果前端 {:captcha_img()}有传值 id,那么后台 captcha_check() 验证也需要相应的 id 参数区分。
验证结果,普遍使用 ajax 请求,以满足用户顺畅的体验.
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Numerical Methods and Methods of Approximation in Science and En
Karan Surana / CRC Press / 2018-10-31
ABOUT THIS BOOK Numerical Methods and Methods of Approximation in Science and Engineering prepares students and other readers for advanced studies involving applied numerical and computational anal......一起来看看 《Numerical Methods and Methods of Approximation in Science and En》 这本书的介绍吧!