PHP8.1.21版本已发布
vue8.1.21版本已发布
jquery8.1.21版本已发布

Thinkphp6的验证码与session

藏色散人
藏色散人 转载
2021-02-24 16:54:43 2535浏览

下面由thinkphp教程栏目给大家介绍Thinkphp6的验证码与session,希望对需要的朋友有所帮助!

tp6 的验证码与session

今天在用tp6的验证码时候,做登录验证。验证码报错,死活提示验证码失败。

经过一些测试才知道,tp6的session是默认不开启。需要手动取消注释。

1707ea19db62df47db03925c04bec11.png

验证码和session的关系。

其实他是吧验证码的内容存到了session中,所以要是用验证码必须开启session。

这是他的Captcha类
可以看到他在构造函数先注入了一个session类创建一个session的对象保存起来,在以后的session操作就靠这个对象了。

2337b310efce22dd7fcbd042e90ed32.png

在他的创建验证码的方法中可以看到,他通过session的对象向session中存入了一个'captcha'的key.

2cecbd51b169a7209f791789de3d89c.png

在他对验证码进行验证的时候:

先去获取啦一下session中储存的验证码信息。

36bc6d558d6a0005cf7ded4f666212e.png

这就是为什么在使用tp6的验证码的时候必须开启session,在tp6之前的时代,都是根据你php.ini中是否开启啦session。在tp6他自己封装了session的实现,所以需要你手动开启session。切记!!!

声明:本文转载于:segmentfault,如有侵犯,请联系admin@php.cn删除