【发布时间】:2010-10-20 16:17:49
【问题描述】:
我正在使用 PHP 联系表单,它正在向非 gmail 地址发送邮件,但是当我将其设置为发送到 gmail 地址时,它不会被送达(它甚至不会出现在垃圾邮件中) .
我以前听说过这样的问题 - 我不是网络开发人员/专家,所以任何人都可以建议我对下面的 PHP 联系表进行代码/配置更改,这基本上意味着邮件会发送到 gmail 地址?
我在一个 linux/WHM 专用服务器上。
<?php
error_reporting(E_NOTICE);
function valid_email($str)
{
return ( ! preg_match("/^([a-z0-9\+_\-]+)(\.[a-z0-9\+_\-]+)*@([a-z0-9\-]+\.)+[a-z]{2,6}$/ix", $str)) ? FALSE : TRUE;
}
if(!empty($_POST['name']) && !empty($_POST['email']) && valid_email($_POST['email']) === true && !empty($_POST['comment']))
{
$to = "contactform@gmail.com";
$headers = 'From: '.$_POST['email'].''. "\r\n" .
'Reply-To: '.$_POST['email'].'' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
$subject = "Contact Form";
$message = htmlspecialchars($_POST['comment']);
if(mail($to, $subject, $message, $headers))
{
echo 1; //SUCCESS
}
else {
echo 2; //FAILURE - server failure
}
}
else {
echo 3; //FAILURE - not valid email
}
?>
【问题讨论】:
-
与PHP Contact form not sending mail after server migration 完全相同 这是您第三次提问。