使用Fat Free Framework和SMTP发送电子邮件

时间:2014-10-29 15:52:51

标签: php email smtp fat-free-framework

我正在尝试使用Gmail的SMTP服务器在localhost上使用Fat Free Framework发送电子邮件,但它不会发送邮件。我也尝试使用F3 SMTP日志工具,但它什么都不返回。

echo的输出是:“email result:not sent,mylog :, header:不存在”。

我正在使用最新版本的F3,在本地主机上使用Apache 2.2和PHP 5.4。

$smtp = new SMTP ( 'smtp.gmail.com', 465, 'SSL', 'joebloggs@gmail.com', 'mypass' );

$smtp->set('From', '"Joe Bloggs" <joebloggs@gmail.com>');
$smtp->set('To', '<recipientname@gmail.com>');
$smtp->set('Subject', 'Sent with the F3 SMTP plug-in');  
$smtp->set('Errors-to', '<joebloggs@gmail.com>');  

$message = 'it works'; 

$sent = $smtp->send($message, TRUE);

$mylog = $smtp->log();

$sentText = 'not sent';

$headerText = 'does not exist';

if ($sent)
{
    $sentText = 'was sent';
}

if ($smtp->exists('Date'))
{
    $headerText = 'exists';
}

echo "email result: " . $sentText . ",mylog: " . $mylog . ", header: " . $headerText;

2 个答案:

答案 0 :(得分:0)

我认为您可能需要PHPMailer进行更多测试...... 在FLAT FREE的smtp.php代码中,gmail似乎有效:(但是使用PHPMail它是官方的(在示例代码中他们这样做,我使用它和它的工作)。

答案 1 :(得分:0)

感谢所有有用的评论。

我按照Jacky的建议尝试了PHPMailer(令人惊讶的是)然后我收到了PHP的错误消息,告诉我究竟是什么问题。

错误消息是&#34; SMTP ERROR:无法连接到服务器:无法找到套接字传输&#34; ssl&#34; - 你在配置PHP时忘了启用它吗? &#34;

所以我去了我的&#34; php.ini&#34;并搜索了SSL并找到了行&#34; extension = php_openssl.dll&#34;被评论出来了。我取消注释,重新启动Apache和PHPMailer然后工作 - 电子邮件已发送。

我回到Fat Free,现在也工作了! (没有更改问题中发布的代码)。遗憾的是,Fat Free登录没有给我任何提示。

我在PHPMailer中使用了这段代码:Example code for using PHPMailer on localhost (Windows)