忘记密码页面帮助[PHP/HTML]
我有一个CMS,我正在创建一个忘记密码页面,该页面将要求用户输入一个电子邮件地址,代码将在数据库中找到它并向他们发送电子邮件,在我的数据库中,我有多个用户帐户分配给一个电子邮件地址。 我希望这样,如果用户输入一个电子邮件地址,它是一个以上的帐户分配给它,错误的消息说,请联系您的管理员,但atm,它没有这样做。有什么建议吗 这是我忘记的密码页代码:忘记密码页面帮助[PHP/HTML],php,html,Php,Html,我有一个CMS,我正在创建一个忘记密码页面,该页面将要求用户输入一个电子邮件地址,代码将在数据库中找到它并向他们发送电子邮件,在我的数据库中,我有多个用户帐户分配给一个电子邮件地址。 我希望这样,如果用户输入一个电子邮件地址,它是一个以上的帐户分配给它,错误的消息说,请联系您的管理员,但atm,它没有这样做。有什么建议吗 这是我忘记的密码页代码: if ($lookup) { $user->sendPa
if ($lookup) {
$user->sendPasswordResetEmail();
echo"sent email";
} elseif ($lookup) {
echo "please contact your admin";
}else{
$echo"Can't find user";
}
}
}else{
echo "please enter an email address";
}
}
我从另一个文件获取信息,下面是我获取数据库的代码片段:
$resetsystem = $db->query($qry);
if ($resetsystem && $resetsystem->num_rows == 1) {
$that->setUserData($rs->fetch_assoc());
return true;
}
if ($resetsystem && $resetsystem->num_rows > 1) {
return;
}
return false;
}
更新以下代码:
函数lookupByEmail$userID{
全球$db;
$this->id=$userID;$qry=选择user\u id、user\u first\u name、user\u last\u name、user\u username、user\u email、user\u从cms\u用户中暂停,其中user\u email=.$db->SQLString$this->id.和user\u已删除
= 0;;
$rs=$db->查询$qry;
如果$rs&&$rs->num_rows==1{
$this->setUserData$rs->fetch_assoc;
返回1;
}
如果$rs&&$rs->num_rows>1{
返回2;
}
返回0;
}在第一个代码块中,这似乎很奇怪:$numfound=$Your elseif没有检查null,它正在检查true。很抱歉,我忘了删除$numfound=$@JeremiahWinsley感谢您的回复,我不希望它检查null,我希望elseif检查是否有多个电子邮件地址,然后输出错误消息当有多个电子邮件地址时,您的函数返回null。要检查这一点,您需要检查null。如果你不想这样,改变你的函数以返回一些不同的东西。啊,这是有效的,你能解释一下这些改变吗?我仍在学习,如果您能详细解释,我将不胜感激。在LookupByMail中,我已将返回值从布尔值更改为int,这样我们可以满足多种情况,例如0,1和2,如果我使用这些返回值,则在$found中,如果我的答案对您有效,请将其作为已回答,以便其他具有相同问题的人可以得到帮助。我已将其设置为已回答,为什么您将案例设置为0 1和2,这些数字有任何意义吗?它不能与true和false一起工作吗?true和false只是两个值,我们需要3个返回值,一个用于if true,一个用于if false,一个用于if true,一个用于if true,另一个用于if true,但有多个结果,这就是我更改iti的原因。我已更改了我的代码并调整了您的答案,请检查更改。