我正在玩密碼加密,當我將密碼寫入數據庫以及當我登錄到頁面時遇到了一些麻煩。使用sha256密碼問題
當我插入密碼:
$pword = "huuhaa";
$uname = "huuhaa";
$pword = hash('sha256' ,'$pword');
$insuser="INSERT INTO words(username,password) VALUES('$uname','$pword') ";
$insresult=mysql_query($insuser);
在日誌中:
$myusername= 'huuhaa';
$mypassword = 'huuhaa';
$mypasswordCRYPTED = hash('sha256' ,'$mypassword');
$sql="SELECT userid FROM words WHERE username='$myusername' and password='$mypasswordCRYPTED'";
登錄:
在數據庫中的值是從登錄例如值不同。 $ pword在數據庫中:e5f252f ...並在登錄:$ mypasswordCRYPTED = as89dw ....
有人請給我解釋一下嗎?
謝謝
該死的jon,你快2秒:(好工作 – genesis
PHP在雙引號字符串中插入,而不是單引號字符串,該字符串實際上是「$ pword」 – Phil
@Phil:Thanks。Will update。(It's明顯更清楚,不要打擾插值無論如何。) –