我一直在搜索用户完成表单后如何在php中自动发送简单电子邮件的日子。我试过Pear,PHP邮件,Swiftmailer,改变了我的php.ini,尝试了不同的服务器,我发疯了,没有任何工作。我还没有成功发送一封电子邮件。我无休止地搜索,但我仍然不知道该做什么以及为什么没有什么工作。 目前我正在使用Swiftmailer(第二轮)。我设置了一个包含代码的测试页面:
<?php
require_once 'swift/lib/swift_required.php';
// CREATE TRANSPORT CONFIG
$transport = Swift_MailTransport::newInstance();
// CREATE MSG
$message = Swift_Message::newInstance();
// SET PRIORITY TO HIGH
$message->setPriority(2);
// SUBJECT
$message->setSubject('Subject');
// FROM
$message->setFrom(array('example@btopenworld.com'));
// TO
$message->setTo(array('example@googlemail.com'));
// EMAIL BODY
$message->setBody('Test');
// SEND
$mailer = Swift_Mailer::newInstance($transport);
$mailer->send($message);
if (!$mailer->send($message, $failures)) {
echo "Failures:";
print_r($failures);
}
?>
看一篇类似的帖子有人建议代码的最后一部分看错,我的错误是:
Failures:Array ( [0] => example@googlemail.com )
无论发送什么电子邮件(我都使用电子邮件,所以真正的电子邮件)它都不起作用。如果有人有任何帮助或建议,将非常感激。
答案 0 :(得分:0)
example@btopenworld.com
除非您使用btopenworld服务器发送电子邮件,否则这不起作用。电子邮件from
地址需要与您发送邮件的服务器相关联。您可以将BT地址放入reply-to
标题。
此外,SwiftMailer应该有一个“调试”开关,告诉你究竟出了什么问题,但我现在无法在文档中找到它。 Here是Swiftmailer的记录器插件,如果其他所有操作都失败,它应该会有所帮助。