thinkphp5 验证码

学习内容: 
https://www.kancloud.cn/tpshop/thinkphp5/231658 
完全开发手册: 
https://www.kancloud.cn/manual/thinkphp5/154295

教程中的代码:https://github.com/phpervip/tp5a

安装类库 
在使用验证码之前,必须使用Composer来安装验证码类库,在命令行下面切换到你的应用根目录下面,执行: 
composer require topthink/think-captcha

采用Composer包的方式扩展框架及类库,方法: 
1.安装composer: https://pkg.phpcomposer.com/#how-to-install-composer 
2.https://pkg.phpcomposer.com/#how-to-use-packagist-mirror

或者直接拷贝demo下的vendor到工程根目录

验证码显示

创建一个Captcha控制器类,添加验证码显示方法:

<?php
namespace app\index\controller;

class Captcha extends \think\Controller
{

    // 验证码表单
    public function index()
    {
        return $this->fetch();
    }

}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

创建模板文件(application/index/view/captcha/index.html)

  <!doctype html>
  <html>
  <head>
  <meta charset="UTF-8">
  <title>验证码示例</title>
  <script src="http://code.jquery.com/jquery-latest.js"></script>
  </head>
  <body>
  <h2>验证码示例</h2>
  <FORM method="post" class="form" action="{:url('check')}">
  输入验证码:<INPUT type="text" class="text" name="code"><br/>
  <div>{:captcha_img()}</div>
  <INPUT type="submit" class="btn" value=" 提交 ">
  </FORM>
      <div class="copyright">
          <a title="官方网站" href="http://www.thinkphp.cn">ThinkPHP</a> 
          <span>V5</span> 
          <span>{ 十年磨一剑-为API开发设计的高性能框架 }</span>
      </div>
  </body>
  </html>

<script>
    $("#captcha_image").click(function(){
        $(this).find('img').attr('src','/captcha?r='+Math.random());
    });
</script>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27

验证码示例

验证码检测 
下面来进行验证码检测,在控制器中添加验证方法check,代码如下: 

'captcha'  => [
    // 字体大小
    'fontSize' => 35,
    // 验证码长度(位数)
    'length'   => 4,
],
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
参数 描述
seKey 验证码加密Key
codeSet 验证码字符集合
expire 验证码过期时间(秒)
useZh 使用中文验证码
useImgBg 使用背景图片
fontSize 字体大小(px)
useCurve 是否添加混淆曲线
useNoise 是否添加杂点
imageH 验证码图片高度
imageW 验证码图片宽度
length 验证码长度
fontttf 验证码字体
bg 验证码图片背景色
reset 验证成功后是否重置

猜你喜欢

转载自blog.csdn.net/heyuqing32/article/details/80948973
今日推荐