Today, when using the tp6 verification code, I did login verification. The verification code reports an error, and life and death prompts that the verification code failed.
After some testing, I found out that the tp6 session is not enabled by default. Need to manually uncomment.
The relationship between verification code and session.
In fact, he saved the content of the verification code in the session, so if you use the verification code, you must open the session.
This is his Captcha class
You can see that he first injected a session class into the constructor to create a session object and save it. Later session operations will rely on this object.
As you can see in his method of creating a verification code, he stored a 'captcha' key into the session through the session object.
When he is verifying the verification code:
First get the verification code information stored in the session.
This is why the session must be enabled when using the tp6 verification code. In the era before tp6, it was based on whether the session was enabled in your php.ini. In tp6, it encapsulates the implementation of session, so you need to manually open the session. Remember! ! !