当用户忘记密码时,会有一封电子邮件发送到他的电子邮件帐户,其中包含一个链接和令牌(唯一)到resetpassword.php
当身份验证正确时,他就可以更改密码。我的问题是这怎么可能发生? 快速简便的方法是给他发一个新密码,让他通过他的CP更改它,但这是一个很好的用户体验吗?
$result = mysql_query("SELECT member_id FROM members WHERE forgotpass='$token'");
if(mysql_num_rows($result) == 1) {
WHAT GOES HERE?
}
else {
die("Query failed");
}
答案 0 :(得分:2)
这是什么?
应该有像
这样的东西echo 'Your password was mailed to you';
mysql_query("UPDATE members SET password = '".$random_hashed_string."' WHERE forgotpass='$token'");
mail($to, $subject, $message." password:".$random_hashed_string, "From: support@support.com");
答案 1 :(得分:2)
您需要创建一个表单以允许用户选择新密码。表单的操作将更新数据库用户记录的密码字段。这可能是一个单独的过程,但您的WHAT GOES HERE?
将是一个HTML表单。