gpt4 book ai didi

email - pear 邮件, "unable to set sender"

转载 作者:行者123 更新时间:2023-12-04 19:58:54 25 4
gpt4 key购买 nike

我有一个 PHP 邮件脚本,可以成功地将电子邮件发送到除 GMail 地址之外的所有内容,所以现在我正在尝试使用 PEAR 的 Mail 和 Mail_Mime 包创建一个可以发送到 GMail 的脚本。我的印象是,只有通过 GMail 的 SMTP 服务器连接以发送邮件,这才有可能。尝试一个简单的测试脚本后,我收到以下错误:

unable to set sender to [username@gmail.com]



地址没有问题,还有 this site建议如果地址没有任何格式错误,那么这是服务器连接问题。但是在这种情况下我该如何解决连接问题呢?还是我做错了什么?或者是否有另一种更简单的方法来获取 PHP 脚本以成功将邮件发送到 GMail?

我的代码如下(电子邮件地址和密码已更改,显然)
$from = "username@gmail.com";
$to = "username@gmail.com";
$subject = "Test";
$crlf = "\n";
$text = 'Text message';
$html = '<html><body>HTML message</body></html>';
$headers = array (
'From' => $from,
'Return-Path' => $from,
'Subject' => $subject
);

$mime = new Mail_mime($crlf);
$mime->setTXTBody($text);
$mime->setHTMLBody($html);
$body = $mime->get();
$headers = $mime->headers($headers);

$smtp = Mail::factory(
'smtp',
array (
'host' => 'ssl://smtp.gmail.com',
'port' => 465,
'auth' => true,
'username' => "username@gmail.com",
'password' => "password",
'debug' => true
)
);

$mail = $smtp->send($to, $headers, $body);

if (PEAR::isError($mail)) {
echo("<p>" . $mail->getMessage() . "</p>");
echo 'FAILURE';
} else {
echo 'SUCCESS';
}

最佳答案

我无法想象为什么一个简单的 username@gmail.com 地址不起作用,所以这可能是另一个伪装成的错误。确保您没有意外抑制错误消息(在调用 send 之前调用 error_reporting(E_ALL))。

不过要记住的一件事是,您不需要使用 GMail 的 SMTP 服务器将邮件发送到 GMail 地址。您可以使用您的主机提供的一个来达到同样的效果。

关于email - pear 邮件, "unable to set sender",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3217460/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com