2015-05-19 2 views
1

Так что я только что обновил свой проект CI до версии 3. Все отлично работает, кроме сообщений электронной почты.Codeigniter 3 Электронная почта не отправляется

Я создал тестовую функцию для отправки сообщений электронной почты и я вывожу отладчик и часть оттисков ответа:

Не удалось отправить команду AUTH LOGIN. Ошибка: Не удается отправить электронное письмо с помощью PHP SMTP. Возможно, ваш сервер не настроен для отправки почты с помощью этого метода.

Я сохранил тот же файл конфигурации, что и мой проект CI2. Все в порядке?

ПРИМЕЧАНИЕ: Это было проверено только в моей локальной среде.

Любая помощь будет высоко ценится

+1

Так что я не смог найти решение для этого, поэтому я удалил помощник электронной почты CI3 из системных файлов и заменил его версией CI2. Кажется, это работает отлично для меня. –

+0

У меня такая же проблема с CI3.1.0. Я заменю свой системный файл и посмотрю, смогу ли я снова запустить его. Спасибо за патч. – Miles

+0

Я исправил его для своего проекта. Очевидно, что в конфигурационном файле электронной почты действительно нравится «новая строка», которая должна быть установлена ​​в CI3. Где это не должно было быть в CI2. Я добавил $ config ['newline'] = "\ r \ n"; и он работает нормально. Я отправлю его в качестве ответа, когда у меня появится шанс. – Miles

ответ

0

У меня была такая же проблема, и вот что решил это для меня. Когда вы устанавливаете свои параметры конфигурации для электронной почты, вы должны включить один для «новой строки» в CI3.

Так что, если ваш текущий конфиг выглядит примерно так:

$config['protocol'] = 'smtp'; 
$config['smtp_host'] = 'ssl://smtp.gmail.com'; 
$config['smtp_port'] = 465; 
$config['smtp_user'] = '[email protected]'; 
$config['smtp_pass'] = 'yourpassword'; 
$config['charset'] = 'utf-8'; 
$config['mailtype'] = 'text'; 

Вам нужно добавить:

$config['newline'] = "\r\n"; 

Кроме того, увидеть эти двойные кавычки? Вы должны использовать двойные кавычки в «новой строке», иначе это не сработает.

Смежные вопросы