我有一個登記表進行登記的用戶和密碼加密後的比較散列密碼
$password=crypt($_POST['password']);
然後我這個存儲直衝沒有做別的數據庫;
然而,在登錄表單,當我嘗試比較提交的密碼存儲在數據庫中的加密的密碼如下,
$error = array();
$password="";
$name="";
if (empty($_POST['name']))
{
//if the email supplied is empty
$error[] = 'You forgot to enter your username';
}
else
{
$name=$_POST['name'];
}
if (empty($_POST['password']))
{
$error[] = 'Please Enter Your Password ';
}
else
{
$password =crypt($_POST['password']);
}
if (empty($error))
{
$query="SELECT * FROM mytable WHERE (name='$name' AND pass='$password') AND Activation IS NULL";
$result=mysql_query($query);
if(!$result){}
else
{
$numRow=mysql_num_rows($result);
if ($numRow != 0)
{
}
else
{
echo "Incorrect password or unactivated account";
}
}
}
我已經得到了錯誤信息。
什麼樣的錯誤? – 2012-02-03 03:23:46
假設你的意思是「有錯誤信息」是「//錯誤信息msg在這裏被調用」的部分,這只是表示你的查詢沒有找到任何東西,這意味着你不是在尋找正確的東西,或者在那裏在'激活'爲空的數據庫中沒有名稱/密碼。 – 2012-02-03 03:24:48
謝謝,我編輯我的OP來更好地解決問題。 – user1151711 2012-02-03 03:31:11