我正在做一个简单的注册和登录系统。在此之前一切正常,但现在,我无法使用我的真实电子邮件ID登录,但我可以使用假电子邮件。我只是想知道为什么会这样?我已经尝试了三种不同的真实电子邮件ID,但仍然可以。
这里我发布了forgotpassword.php的代码。它说用户在数据库中不存在真实的电子邮件,并显示成功发送虚假电子邮件的恢复邮件。
请帮帮我一个人!
<?php
error_reporting(0);
$email=$_POST['email'];
if($_POST['submit']=='Send')
{
require_once('Connections/pci_conn.php');
mysql_select_db($database_pci_conn, $pci_conn);
$query="select * from tbl_users where email='$email'";
$result=mysql_query($query) or die(error);
if(mysql_num_rows($result))
{
// The message
ini_set('SMTP', 'restricted');
ini_set('smtp_port', 'restricted');
ini_set('sendmail_from', 'no_reply@blahblah.com');
$message = "Forgot password";
// In case any of our lines are larger than 70 characters, we should use wordwrap()
$message = wordwrap($message, 70, "\r\n");
// Send
if($message)
{
mail($email, 'My Subject', $message);
echo "<span style='padding-left:30px;'>email sent</span>";
}
else
{
echo "error";
}
}
else
{
echo "<span style='padding-left:30px;'>No user exist with this email id</span>";
}
}
?>
<table>
<form action="forgot.php" method="post">
<tr><td>Enter you email ID: <input type="text" name="email"></td></tr>
<tr><td><input type="submit" name="submit" value="Send"></td></tr>
</form>
</table>
电子邮件验证部分
$email_1= htmlspecialchars($_POST['email']);
if (!preg_match("/([\w\-]+\@[\w\-]+\.[\w\-]+)/",$email_1)) {
$emailErr = "Invalid email format";
echo $emailErr;
}
else
{
$email= htmlspecialchars($_POST['email']);
}