我一直在尝试为我的网站做一个电子邮件确认。人们可以注册没有问题,并且所有内容都注册到数据库中,但不会发送电子邮件。我正常使用它,它给了我关于SMTP服务器的一些错误,所以有人说我应该尝试SurgeMailer。我下载了它,现在电子邮件实际上说他们发送了,但电子邮件从未收到它们。任何帮助将是伟大的!下面是发送电子邮件的代码。通过php发送邮件不工作
/*Send Email here*/
$to=$Email;
$subject="Newgenstudios Account Confirmation";
/*From*/
$header="From:Newgenstudios <[email protected]>";
/* Your message */ /*Not Finished */
$message = "<h3>Welcome to the site ".ucfirst(strtolower($First_Name))."!</h3>
<p>To complete your account registration, you must activate your account. Click on the link below or paste it into the URL to activate your account.</p>
<p><a href='http://localhost/confirmation.php?passkey=$confirm_code'>Activate Now!</a </p>
<p>Once your account has been activated, you may log in at anytime using the information you supplied below:<br />
<strong>Email: </strong>$Email<br />
<strong>Password: </strong>$Password</p>
<p>Other Information:</p>
<strong>Name: </strong>$First_Name<br />
<strong>Phone: </strong>$Phone<br />
<p>Thank you for registering and see you on the site!</p>
<p>Did you not register? Then please disregard this message.</p>";
/* Send Email */
$sentmail = mail($to,$subject,$message,$header);
}
/*If not found*/
else {
echo "Not found your email in our database";
}
/* email succesfully sent */
if($sentmail){
echo "Your Confirmation link Has Been Sent To Your Email Address.";
}
else {
echo "Cannot send Confirmation link to your e-mail address";
}
?>
检查您的日志文件是否有错误。 PHP的'mail()'函数并不保证邮件发送,只是它被接受发送。 – j08691
btw为了发送HTML电子邮件,您需要定义MIME-TYPE和Content-type。此页面底部的示例:http://www.w3schools.com/php/func_mail_mail.asp – christopher
您不必包含MIME-TYPE和Content-Type。无论如何它会发送。 @ user1868065如果它是你的服务器,检查/ var/log/maillog,看看里面是否有错误。如果您无法访问服务器,可尝试使用SwiftMailer并使用IMAP等方式通过另一台邮件服务器进行连接。 – ChrisG