通过php和标题发送邮件?

问题描述:

当我从我的PHP脚本发送邮件,我送它像这样通过php和标题发送邮件?

$to = $_POST['email']; 
$subject = $_POST['username'] . ' - Validate your account at example.com!'; 
$message = 'http://www.example.com/activate?username=' . $_POST['username'] . '&code=' . $random; 
$headers = 'From: [email protected]'; 

当邮件来通过一个电子邮件从头部这样表示,

[email protected]通过web87。 extendcp.co.uk

有没有一种方法可以阻止通过位显示?

+0

当你说“节目这样”,你在Gmail中的意思是,不是吗? – 2011-12-18 17:45:50

+0

是的,我认为这将是大多数电子邮件,如果Gmail的 – cgwebprojects 2011-12-18 17:48:33

是的,您需要实施您的电子邮件的DKIM signing,以便Gmail可以验证您的服务器是否有权为该域发送电子邮件。

+0

谢谢我会研究这一点。 – cgwebprojects 2011-12-18 17:48:53

唯一的解决方案是使用自己的SMTP服务器,或者至少另一个SMTP服务器......如果你的提供者允许的话。

这是您的供应商的网络服务器,它修改了From:这一行。

尝试使用IMAP的方法从PHP

先用Gmail的IMAP服务器连接: http://www.php.net/manual/en/function.imap-open.php (请确保您使用SSL/TLS)

然后用imap_mail发送消息( ): http://www.php.net/manual/en/function.imap-mail.php

$host="{imap.gmail.com:993/imap/ssl/novalidate-cert}"; 
$user=""; // Your GMail-account 
$pass=""; // Your GMail-password 
if ($mbox=imap_open($host, $user, $pass)) { 
    // Connection Success 
    $to = ""; 
    $subject = ""; 
    $headers = ""; 
    imap_mail ($to, $subject, $message, $headers) 
} else { 
    // Failed to connect 
} 

希望这有助于;)

虽然FGE的答案很可能是正确的在这里,总有一个机会,如果有一个“友好”的名称在标题您的服务器的邮件服务将不会增加它:

From: No Reply <[email protected]>

...相反只是:

From: [email protected]