TP5 使用验证码功能

Posted tosser

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了TP5 使用验证码功能相关的知识,希望对你有一定的参考价值。

  工作中后台开发使用的是 TP5,但是对语法不是很熟悉,总是看着手册写代码。当时做 Java 的时候也是这样,很多语法需要靠百度。不是不能写代码,但是这样的效率感觉不高,没有行云流水的感觉,要是能有聊天时打字的感觉就好多了。不熟悉就得多学习,但是学完经常就忘记了,所以博客就当是记录了。

 

  TP5的验证码在 /vendor/topthink/think-captcha 目录下,文件分别是 Captcha.php 、CaptchaController.php 和 helper.php 三个文件。可以直接通过 http://localhost/项目名称/public/index.php/captcha 来进行访问。

 

1、在页面上显示验证码

  插入一个 img 的 html 标签:

1 <img src="/public/index.php/captcha" alt="点击更新验证码" onclick="reloadcode(this);"/>

 

 2、点击验证码图片时更新验证码

  插入一段 js 代码:

1 // 刷新验证码
2 function reloadcode(obj) {
3     obj.src = ‘/public/index.php/captcha?id=‘ + Math.random();
4 }

 

3、验证码显示大小的设置

  在 /application/config.php 文件的末尾增加配置如下:

1 ‘captcha‘   => [
2     ‘imageH‘    => 50,
3     ‘imageW‘    => 200,
4 ],

 

4、判断验证码

  登录时将数据提交的地址,代码如下:

1 <form class="form form-horizontal" action="{:url(‘login/check‘)}" method="post">

 

5、判断验证码

  判断验证码是否正确,在提交的 Controller 中增加对应的判断代码:

1 public function check()
2 {
3     $data = input(‘post.‘);
4     if (!captcha_check($data[‘code‘])) {
5         $this->error(‘验证码不正确‘);
6     } else {
7         $this->success(‘OK‘);
8     }
9 }

 

TP5 验证码的详细说明地址:https://www.kancloud.cn/manual/thinkphp5/154295

 

以上是关于TP5 使用验证码功能的主要内容,如果未能解决你的问题,请参考以下文章

tp5用缓存存储手机短信验证码 ,同时实现了避免60秒内重复发送以及验证功能

tp5 wherein 怎么查

网易云 短信验证码+验证+tp5

TP5不安装composer使用验证码

TP5.1让验证码在另外的项目(Electron-vue)里面使用

急急急,tp5的验证码不显示