使用谷歌应用程序Gmail时,php pear邮件没有修改'from'

时间:2014-07-11 14:45:43

标签: php smtp gmail pear pear-mail

我为我网站的某个电子邮件设置了谷歌应用程序,从而使网站的内置电子邮件路由在从网络上进行操作时毫无用处。我需要做的是让它使用ssl / smtp连接到谷歌应用程序设置。 为此,我使用了PEAR Mail和mime(用于HTML内容)。 邮件的发送没有问题...我遇到的唯一问题是,“发件人”标题是不是通过传输保存的。相反,帐户电子邮件位于“发件人”标题中。

帐户存在于网络服务器端(这意味着什么都没有,因为它全部通过谷歌),我已经添加了别名到我的Gmail应用程序管理端。但无论我做什么,它都不会改变'从'。

这是我在使用谷歌应用程序的Gmail的单个帐户时会遇到的问题吗? ( - 来自帐户名称的'''来自')

由于

- 对于那些想知道的人,这是邮件发送的示例函数:

function pearMail($from, $fromTitle, $to, $subject, $text, $html)
{
require_once "Mail.php";
require_once('Mail/mime.php');

$host = "ssl://smtp.gmail.com";
$port = "465";
$username = "name@domain.com";
$password = "PASSWORD";

$headers = array ('From' => $from,
    'Return-Path' => '-do not reply-',
'To' => $to,
'Subject' => $subject);     
$crlf = "\n";
// Creating the Mime message
    $mime = new Mail_mime($crlf);
// Setting the body of the email
    $mime->setTXTBody($text);
    $mime->setHTMLBody($html);

    $body = $mime->get();
    $headers = $mime->headers($headers,true);
// Sending the email
    $mail =& Mail::factory('smtp',
array ('host' => $host,
'port' => $port,
'auth' => true,
'username' => $username,
'password' => $password));
$mail->send($to, $headers, $body);

if (PEAR::isError($mail)) {
echo("<p>" . $mail->getMessage() . "</p>");
} else {
echo("<p>Message successfully sent!</p>");
}
}

1 个答案:

答案 0 :(得分:1)

有关更改From:的信息,请参阅google help

  

定制&#39;来自:&#39;功能仅在您已拥有链接到备用地址的帐户时才有效。要使用其他Gmail用户名发送邮件,您必须先注册该地址。