前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Thinkphp6学习(2)验证码的实现与检验

Thinkphp6学习(2)验证码的实现与检验

作者头像
哆哆Excel
发布2022-10-25 14:56:56
1.5K0
发布2022-10-25 14:56:56
举报
文章被收录于专栏:哆哆Excel

Thinkphp6学习(2)验证码的实现与检

一.安装think-captcha扩展包

首先使用Composer安装think-captcha扩展包:

composer require topthink/think-captcha

二.开启Session

验证码库需要开启Session才能生效

在app目录下有一个文件middleware.php,把“\think\middleware\SessionInit::class”的注释去掉就行了

三.控制器中的代码要先use以下的类

<?php

……

use think\captcha\facade\Captcha;

use think\facade\Session;

use think\middleware\SessionInit;

……

才能正确使用

四、下面是在视图中使用的代码

<div>{:captcha_img()}</div>

显示如下,点击可以刷新

五。接下来要点击提交到后台进行检验啦

1.前台:加上提交的地址与方法

<form class="layui-form" action="{:url('capchick')}" method="post" >

2.后台进行检测代码

六、效果:

(1)

(2)

下面是所有的代码

代码语言:javascript
复制
最后是所有的代码
控制器的php代码
<?php
namespace app\controller;

use app\BaseController;
use think\facade\Db;
use think\facade\View;
use think\captcha\facade\Captcha;
use think\facade\Session;
use think\middleware\SessionInit;
use think\facade\Request;

class Captest extends BaseController
{
public function index()
{

return View::fetch();
    }

public function capchick()
{
      $data = Request::param();
//dump($data);
if(captcha_check($data['vcode'])){
echo "验证码正确";
        }else{
echo "验证码错误";
        };

    }
}
前端的代码html代码
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Document</title>
  <link rel="stylesheet" type="text/css" href="/static/layui/css/layui.css">
<!--   <script type="text/javascript" src="/static/layui/jquery-3.4.1.min.js"></script> -->
    <script type="text/javascript" src="/static/layui/layui.js"></script>

</head>
<body>
  <div>
  <h1 >验证码测试</h1>
  </div>
  <form class="layui-form" action="{:url('capchick')}" method="post" >
    <div class="layui-form-item">
        <div class="layui-inline">
          <label class="layui-form-label">验证码</label>
          <div class="layui-input-inline">
            <input type="text" name="vcode" class="layui-input">
          </div>
        </div>
        <div class="layui-inline">
          <div width="120" height="50"> {:captcha_img()}</div>
        </div>
      </div>

    <div class="layui-form-item">
      <div class="layui-input-block">
        <button class="layui-btn" lay-submit lay-filter="formDemo">立即提交</button>
        <button type="reset" class="layui-btn layui-btn-primary">重置</button>
      </div>
    </div>
</form>


</body>
</html>

===今天学习到此===

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-02-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 哆哆Excel 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
验证码
腾讯云新一代行为验证码(Captcha),基于十道安全栅栏, 为网页、App、小程序开发者打造立体、全面的人机验证。最大程度保护注册登录、活动秒杀、点赞发帖、数据保护等各大场景下业务安全的同时,提供更精细化的用户体验。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档