PHP Web表单未发送到Gmail电子邮件

时间:2013-04-08 15:18:25

标签: php html email gmail

我有一个php表单,当有人填写表单时,它适用于所有其他电子邮件帐户(yahoo,hotmail,@ mydomain.com等),但是当它发送到gmail用户时,电子邮件永远不会通过,甚至在垃圾邮件箱中也没有。

            $from = $email;

            //Testing Below
            //$headers = 'From:noreply@mydomainname.com' . "\r\n"; 
            $headers .= "From: $from \n";
            $headers .= " MIME-Version: 1.0\r\n ";
            $headers .= " Content-Type: text/html; charset=ISO-8859-1\r\n ";

            //Mail The Message
            mail($to, $subject, $message, $headers);

上面的代码不会发送到Gmail,但会适用于所有其他电子邮件帐户。这个(下面)将适用于Gmail,但当然我没有在电子邮件中选择html。

            $headers = 'From:noreply@mydomainname.com' . "\r\n"; 
            //$headers .= "From: $from \n";
            //$headers .= " MIME-Version: 1.0\r\n ";
            //$headers .= " Content-Type: text/html; charset=ISO-8859-1\r\n ";

            //Mail The Message
            mail($to, $subject, $message, $headers);

所以基本上当我将MIME和Content类型添加到headers变量时,它不会发送到gmail帐户。

提前致谢!

2 个答案:

答案 0 :(得分:1)

我不久前回答了一个与此相关的问题。它可能与gmail的电子邮件过滤有关,也许你的垃圾邮件得分太高,所以它甚至没有进入垃圾邮件文件夹,这可能是由于没有正确的DNS配置/密钥并试图同时使用html

我留下了另一个答案的链接(它很长,并不像你想象的那样容易xD):

PHP and Gmail spam filter

希望它对你有所帮助。

答案 1 :(得分:0)

您没有使用正确的连接运算符: 将您的From行更改为:

$headers .= "From: ".$from;