我有一个登记表进行登记的用户和密码加密后的比较散列密码
$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