當註冊時
我這樣寫
$_SESSION['password'] = md5($_POST['password']);
然後直接用$_SESSION['password']輸入資料表
當要登入時
$password = md5($_POST['loginpassword']);
確認是否一致
但發生了問題
就是一樣的字串
進入資料表時的值是0144712dd81be0c3d9724f5e56ce6685
當登入時的值變成82e39cf0b075c9429619aba2022935b2
我就覺得詭異,怎麼都不符合密碼?印出後才發現這樣情況。
我確定是一模一樣的數字字串
怎麼會完全變了樣?
我換了sha1也是一樣完全不同!
登入時
<input name="loginpassword" type="password" id="loginpassword" placeholder="Password">
註冊時
<input name="password" type="password" id="password" placeholder="Password">
差別在我註冊的時候沒有立即送到資料表
只先存在SESSION中 然後等等再送入
這有關係嗎?
這簡直太奇葩了
我第一次遇到
你的字符串确定一样,md5后的加密串也会是一样的。你可能忽略的是有没有录入空格,用个trim去个空格,或者打印出两次录入的字符串长度是否一致。