2013-04-08 98 views
1

我有一个我做的PHP表单,当有人填写表单时,它可以与所有其他电子邮件帐户(雅虎,Hotmail,@ mydomain.com等)正常工作,但是当它发送电子邮件给Gmail用户,电子邮件永远不会通过,即使在垃圾邮件框中。PHP Web窗体不发送到Gmail电子邮件

  $from = $email; 

      //Testing Below 
      //$headers = 'From:[email protected]' . "\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:[email protected]' . "\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和内容类型添加到标题变量时,它不会发送到gmail帐户。

在此先感谢!

+0

不要使用'mail',但另一个邮件来代替。 – 2013-04-08 15:26:25

+0

在php中有哪些其他邮件选项?我对PHP还是比较新的。 – 2013-04-08 17:56:57

回答

0

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

我留下一个链接到对方的回答(这是相当长,不容易,你会想象XD):

PHP and Gmail spam filter

希望它可以帮助你。

+0

感谢您的回复。我会研究这个并回复你。它不应该是垃圾邮件问题,我不会因为它是一个新的域名,而不是一个月前的图像。这很重要吗? – 2013-04-08 15:48:26

+0

当然,域名越新,其可信度越低,有时候过滤器会将您的电子邮件放入垃圾邮件文件夹,有时他们会拒绝。所以请特别注意反向DNS和DKIM的 – aleation 2013-04-08 16:01:54

+0

好吧,我联系我的托管帐户提供商,看看他们可以想出什么,并在与他们聊天几个小时后,他们无法提供帮助。我想我只能从电子邮件中去掉html,直到我弄明白为止。谢谢你的帮助! – 2013-04-08 17:56:18

0

您没有使用正确的连接符: 更改从行:

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