gpt4 book ai didi

php - Swift-Mailer 错误, "Address in mailbox given [] does not comply with RFC"

转载 作者:可可西里 更新时间:2023-11-01 13:28:50 25 4
gpt4 key购买 nike

我构建了一个简单的 PHP 联系表单,它应该通过 Swift-Mailer 脚本发送邮件。

问题是我一直收到这个错误

Uncaught exception 'Swift_RfcComplianceException' with message 'Address in mailbox given [] does not comply with RFC 2822, 3.6.2.'

我猜这意味着我使用了无效的电子邮件地址。但由于我使用 myaddress@gmail.com 来测试该凭证,问题可能出在其他地方。这是我的配置:

邮件发送到:

$my_mail = 'mymail@mydomain.com';
$my_name = 'My Name';

邮件内容:

$name = trim($_POST['name']);
$email = trim($_POST['email']);
$message = trim($_POST['message']);
$date = date('d/m/Y H:i:s');
$ipaddress = $_SERVER['REMOTE_ADDR'];

$content = $message.'\n\nSent on: '.$date.' From: '.$ipaddress;

我使用 swiftmailer 发送邮件的函数:

function send_mail () {
require('/path/to/swift_required.php');

//The means of transport
$transport = Swift_SmtpTransport::newInstance('mail.mydomain.com', 25);
$transport->setUsername('myusername');
$transport->setPassword('mypass');

$mailer = Swift_Mailer::newInstance($transport);

//The message
$mail = Swift_Message::newInstance();
$mail->setSubject('Hello');
$mail->setFrom(array($email => $name ));
$mail->setTo(array($my_mail => $my_name));
$mail->setBody($content, 'text/plain');

//Sending the message
$test = $mailer->send($mail);

if ($test) {
echo '<p>Thank you for contacting us '.$name.'! We will get in touch soon.</p>';
}
else {
echo '<p>Something went wrong. Please try again later.</p>';
}
}

如您所见,它是一个非常简单的表单,包含三个字段:姓名、邮件和消息。我还为每个联系表单字段设置了其他验证,但我认为这在这里无关紧要。

谢谢你的帮助。

编辑:只需使用 gmail 作为 smtp 服务器进行测试。不幸的是,它仍然给出了完全相同的结果。

最佳答案

您的所有数据变量(地址、名称...)似乎都是全局变量。除非您将全局变量作为参数传递(推荐方式)或使用 global 关键字(或 $GLOBALS 数组),否则无法从函数中读取全局变量。

关于php - Swift-Mailer 错误, "Address in mailbox given [] does not comply with RFC",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6508033/

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