12.4.1 验证码生成的原理
验证码是从服务器脚本随机生成的。想要制作验证码,需要先了解验证码生成的原理。
(1)PHP系统核心绘图类库进行图片的绘制。
(2)绘图的那些随机的数字,字母,都是PHP预定义好的。
(3)将绘制图片的URL地址,通过网络返回给客户端,然后客户端可以使用img标签去引用这个验证码的地址。(https://www.daowen.com)
(4)PHP在绘制完毕验证码之后,注意随机选择生成的字母,不能丢弃,而是需要保存到session中。
(5)当客户端输入验证码完毕后,会提交表单,后端服务器会收到。
(6)将收到的用户验证码和本地session进行比较,一致为正确,否则错误,重新生成并替换原来的验证码。
(7)一个验证码只能使用一次。