ThinkPHP5&5.1实现验证码的生成、使用及点击刷新功能示例
作者:pan_yuyuan 发布时间:2023-11-17 02:54:39
标签:ThinkPHP5,验证码
本文实例讲述了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框架的PHP程序设计有所帮助。
来源:https://blog.csdn.net/pan_yuyuan/article/details/81947804
0
投稿
猜你喜欢
- Linux 自动备份oracle数据:曾经有个同事,来回操作开发和生产的数据库,结果误删了生产的数据库,那种心情我想不是一般人能理解的,虽然
- PHP异步调用实现方式 浏览器和服务器之间只一种面向无连接的HTTP协议进行通讯的,面向无连接的程序的特点是客户端请求服务端,服务端根据请求
- 最近关于浏览器的最重要的事情就是IE的极光0day漏洞了,这个漏洞导致包括Google在内的多家美国公司受到黑客的攻击,当然也有很多网站被黑
- 本文是小编针对js保留两位小数这个大家经常遇到的经典问题整理了在各种情况下的函数写法以及遇到问题的分析,以下是全部内容:一、我们首先从经典的
- 在linux服务器lvs负载均衡、双机热备应用中经常用到mysql双机热备,安装和配置过程如下:一、 安装MYSQL# cp mysql-s
- Oblog4.6 ACCESS版转换为UCenterHome1.5的全过程1、 说明:
- 大家都在关注视觉的盛宴,西方的美学;今天就分享下,中国最为古老的美,也是身边随处可见的美学–中国汉字书法之美;古文者,仓颉做造也。仰观奎星园
- 任何东西只要跟Google有关就总能给我们带来点儿惊喜,2008年9月2日发布的Google Chrome浏览器也不例外。Google Ch
- 1.linux下启动mysql的命令:mysqladmin start/ect/init.d/mysql start (前面为mysql的安
- Sitepoint有一个不错的针对Web开发者和设计者的参考手册网站,可以查询HTML、CSS和JavaScript的基本信息、兼容性和示例
- 在计算机信息技术中,少有象类似 XML 那样的技术,她让人们产生范围很大的联想,而这些联想及其应用又可能相距甚远。她也更多引起人们对 XML
- 自定义数据库自动编号初始值和步进值问题: 如何定义数据库的自动编号字段的初始值和步进值?如何定义自动增加字段的初始值和步进值?如何使删除过数
- 之前使用beego的http库的时候,有的情况需要下载文件。beego是能实现,但就是有点问题:不支持回调,没法显示下载速度,这在日常开发中
- 防止一般的采集以及小偷读取,加在顶部。同理,可以改造成JS脚本。下面的方法是通过选择同一IP的访问频率来达到防止采集的目的,就是可能也把搜索
- SELECT SUBSTR (T.RPT_ID, &nb
- 在照着Tensorflow官网的demo敲了一遍分类器项目的代码后,运行倒是成功了,结果也不错。但是最终还是要训练自己的数据,所以尝试准备加
- 最近将Jesse James Garrett的《用户体验的要素》一书读了两遍,做一些简要的摘录并添加一些个人注释。当然,一本好书绝对不是简单
- 以前写JS程序的时候,经常碰到了定位的问题。但每次都看到一半,找到需要的属性就了事了。今天下了狠心,要花点时间,彻底地弄明白他。以下内容看着
- asp函数代码 代码如下:<% Function RemoveHTML(str) Dim objRegExp, Match,strHT
- 刚才运行了一段代码,来查看Request.ServerVariables里面有多少值,看了一下,共50个!代码<%=Request.S