我有2个表:MYSQL/PHP选择
newpw_ask
email code
users
id username password email sid newpw_code
我有此PHP代码:
$code = $_POST['code2'];
$email = mysql_query("SELECT email FROM pw_ask WHERE code='$code'");
if ($pass == $pass2) {
if ($email) {
$pass3 = md5($pass);
mysql_query("UPDATE users SET password='$pass3' WHERE email='$email'");
mysql_query("UPDATE users SET newpw_code='' WHERE email='$email'");
mysql_query("DELETE FROM pw_ask WHERE code='$code'");
header("Location: index.php?ret=pw");
} else {
echo 'Wrong code';
}
}
只有这个查询得到执行:
mysql_query("DELETE FROM pw_ask WHERE code='$code'");
而且当我输入正确的密码,它说:“错误代码”。
请阅读本指南对散列密码。 MD5不够好。 http://www.php.net/manual/en/faq.passwords.php – Halcyon
天哪,不要用这个。 '$ this =“一切”;' - 有助于回答的人,不应该; ***时期。***如果他们这样做,给出一个原因。我绝不会提出以纯文本或'md5'存储密码的问题。 –
只是一个注释:使用mysqli_ *而不是mysql_ * – aerojun