thinkphp3.2版本,输入验证码发现输入的验证码md5加密后跟SESSION保存的不一致

$username=$_POST['username'];$password=$_POST['password'];$code=$_POST['code'];dump(m... $username=$_POST['username'];
$password=$_POST['password'];
$code=$_POST['code'];
dump(md5($code));
dump($code);
dump($_SESSION);
exit();
然后我打出来情况如下
string 'a204591fda97bc34b34b294195402125' (length=32) // md5($code)
string '87415' (length=5) //$code
array (size=1) //dump($_SESSION);
'd2d977c58444271d9c780187e93f80e5' =>
array (size=2)
'verify_code' => string 'c1a21fb2f30b2c5f0619a239ae3e1e4a' (length=32)
'verify_time' => int 1489109967
展开
 我来答
辉煌灬仔
2017-03-10 · 超过89用户采纳过TA的回答
知道小有建树答主
回答量:219
采纳率:100%
帮助的人:111万
展开全部
你的验证码是加密后的数字,而session是随机生成的,两个就不可能是一样的
追问
tp随机生成验证码然后把验证码存在SESSION里面,然后用户登录的时候不是要比对验证码,先前,我用$Verify->seKey = md5;把密钥也设成md5了,他们还是不一样,
为什么在tp 3.1版本是dump(md5($code));和dump($_SESSION);是一样的
追答
3.2里面不是有验证码校验,你直接用那个就可以啦

验证码检测
可以用Think\Verify类的check方法检测验证码的输入是否正确,例如,下面是封装的一个验证码检测的函数:
// 检测输入的验证码是否正确,$code为用户输入的验证码字符串function check_verify($code, $id = ''){ $verify = new \Think\Verify(); return $verify->check($code, $id);}
xu673663859
2017-03-10 · 超过51用户采纳过TA的回答
知道小有建树答主
回答量:179
采纳率:100%
帮助的人:89.8万
展开全部
你code加密了 可是你session的加密了吗
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式