народ, помогите найти какое нить средство для отправки email. просто функция mail чистого php не всегда срабатывает((
а это вот расширение http://www.yiiframework.com/extension/email/ выдает ошибку
Alias "application.extensions.email.Email" is invalid. Make sure it points to an existing PHP file.
в конфиг все добавил а ругается на строку $email = Yii::app()->email;
отправка email
Re: отправка email
Посмотрите на расширение http://www.yiiframework.com/extension/mail/
Обертка вокруг SwiftMailer. Можно настроить отправку данных через свой smtp сервер.
Обертка вокруг SwiftMailer. Можно настроить отправку данных через свой smtp сервер.
-
- Сообщения: 89
- Зарегистрирован: 2011.05.19, 19:20
Re: отправка email
а как его ставить. просто начинаю ставить, все делаю как сказано в инструкции, он кучу ошибок выдает(( можете описать?
Re: отправка email
Можете попробовать этот компонент
http://zendframework.com/manual/ru/zend.mail.html
устанавливается как расширение
http://yiiframework.ru/doc/guide/ru/ext ... ntegration
http://zendframework.com/manual/ru/zend.mail.html
устанавливается как расширение
http://yiiframework.ru/doc/guide/ru/ext ... ntegration
follow me zloy_max
-
- Сообщения: 89
- Зарегистрирован: 2011.05.19, 19:20
Re: отправка email
спасибо большое, помогло.
кодировка в теле письма ломается : вылечить просто
При использовании расширения http://www.yiiframework.com/extension/email (by Jonah Turnquist) при использовании UTF-8 может ломаться кодировка на этапе выполнения функции Email::mail .
При определенных настройках веб-сервера или php, когда в каком-то из них указана другая, не UTF-8 кодировка,
mb_language считает, что текущая кодировка установлена в windows=1251 .
Если ваш скрипт при этом выполняется в utf-8, то тело и заголовок письма будут кодированы в нечитаемый вид.
Чтобы кодировка не ломалась, нужно перед вызовом mb_language() явно указать кодировку: mb_internal_encoding("UTF-8"):
При определенных настройках веб-сервера или php, когда в каком-то из них указана другая, не UTF-8 кодировка,
mb_language считает, что текущая кодировка установлена в windows=1251 .
Если ваш скрипт при этом выполняется в utf-8, то тело и заголовок письма будут кодированы в нечитаемый вид.
Чтобы кодировка не ломалась, нужно перед вызовом mb_language() явно указать кодировку: mb_internal_encoding("UTF-8"):
Код: Выделить всё
private function mail($to, $subject, $message) {
// указываем кодировку в явном виде. Список возможных кодировок http://www.php.net/manual/ru/mbstring.supported-encodings.php
//
mb_internal_encoding("UTF-8");
//
switch ($this->delivery) {
case 'php':
$message = wordwrap($message, $this->lineLength);
// $this->language мы указываем в переменной Email::language в описании класса
//
mb_language($this->language);
// проверяем по логам, что кодировка письма корректная
Yii::log('email mb_language: '.$this->language);
return mb_send_mail($to, $subject, $message, implode("\r\n", $this->createHeaders()));
break;
case 'debug':
$debug = Yii::app()->controller->renderPartial('email.debug',
array_merge(compact('to', 'subject', 'message'), array('headers'=>$this->createHeaders())),
true);
Yii::app()->user->setFlash('email', $debug);
break;
}
}