我想制作一个表格,从垃圾邮件安全,并发送一个简单的电子邮件给注册人。PHP安全电子邮件阻止虚假的电子邮件,但让注册通过
我对PHP相当陌生,im面临的问题是,当表单在电子邮件字段中提交了一个错误的电子邮件地址时,它会显示错误消息,指出电子邮件无效,但仍允许注册通过将其添加到数据库。
这里是代码
function spamcheck($field) {
// filter_var() sanitizes the e-mail
// address using FILTER_SANITIZE_EMAIL
$field = filter_var($field, FILTER_SANITIZE_EMAIL);
// filter_var() validates the e-mail
// address using FILTER_VALIDATE_EMAIL
if(filter_var($field, FILTER_VALIDATE_EMAIL)) {
return TRUE;
}
else {
return FALSE;
}
}
if(isset($_REQUEST['email'])) {
// if "email" is filled out, proceed
// check if the email address is invalid
$mailcheck = spamcheck($_REQUEST['email']);
if ($mailcheck==FALSE) {
die("<font color='red'>Your email address is invalid, please try again.</font><br/><br/><form><INPUT TYPE='button' VALUE='Back' onClick='history.go(-1);return true;'></form>");
}
else {//send email
$to = "$email";
$from = "[email protected]";
$message = "Just a message";
$subject = "Subject";
mail($to, $message, $subject, "From: $from", "-f$from");
}
}
任何帮助将不胜感激。
将其添加到数据库的代码未显示,但它不会发送邮件 - 在这种情况下,请确保将注册保存到数据库的调用位于您发送邮件的部分。 – BugFinder
嗨,感谢,电子邮件正在通过,代码正好在它下面将它添加到数据库中,我移动它(只是低于值)和相同的问题。 –
它不能显示“你的电子邮件地址是无效的”消息,并发送邮件 - 不遵循发布的代码 - 如果数据库插入的代码与邮件命令不同,那么它会这样做与垃圾邮件状态无关。 – BugFinder