Отправка электронной почты с использованием Fat Free Framework и SMTP

Я пытаюсь отправить электронное письмо, используя Fat Free Framework на localhost, используя SMTP-сервер Gmail, но оно не отправляет почту. Я также пытаюсь использовать средство ведения журнала SMTP F3, но оно ничего не возвращает.

Вывод из эха: "результат по электронной почте: не отправлено, mylog:, заголовок: не существует".

Я использую последнюю версию F3, с Apache 2.2 и PHP 5.4 на localhost.

$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 ответа

Решение

Спасибо за все полезные комментарии.

Я попробовал PHPMailer, как предложил Джеки, и (удивительно) я получил сообщение об ошибке от PHP, чтобы точно сказать, в чем проблема.

Сообщение об ошибке было "SMTP ОШИБКА: не удалось подключиться к серверу: не удалось найти транспортный сокет"ssl" - вы забыли включить его при настройке PHP? "

Поэтому я зашел в свой "php.ini" и искал SSL и нашел строку "extension=php_openssl.dll", которая была закомментирована. Я раскомментировал его, перезапустил Apache и PHPMailer, затем сработал - письмо было отправлено.

Я вернулся в Fat Free, и теперь это тоже сработало! (без изменений в коде, размещенном в вопросе). Жаль, что регистрация Fat Free не дала мне никаких подсказок.

Я использовал этот код для PHPMailer: Пример кода для использования PHPMailer на локальном хосте (Windows)

Я думаю, что вам, вероятно, нужен PHPMailer для дальнейшего тестирования... В коде smtp.php из FLAT FREE gmail, кажется, работает:(но с PHPMail это официально (в примере кода они делают это, и я использую это, и это работает)).

Другие вопросы по тегам