im пытается в течение нескольких дней много способов отправить электронную почту с локального сервера с помощью gmail .. Я однажды сделал это с расширением yii, но через некоторое время его работа не работала, я попытался добавить весь PHPMailer и сделать рассылку надлежащим образом.Yii, PHPMailer Не может быть загружен
это мой код:
static function gmail($email)
{
$mail = new phpmailer();
$mail->IsSMTP();
$mail->Host = "smtp.gmail.com";
$mail->SMTPAuth = true;
$mail->SMTPSecure = "tls";
$mail->Port = 587;
$mail->Username = "[email protected]";
$mail->Password = "password"; //best to keep this in your config file
$mail->Subject = 'subject';
$mail->Body = 'message';
$mail->addAddress($email);
$mail->send();
}
я скачал библиотеку PHPMailer из Github и экстрагируют все папки компонентов. Путь, как я добавил в конфигурационный файл выглядит так:
'import'=>array(
'application.models.*',
'application.components.*',
'application.components.PHPMailer.*'
),
на первой попытке я получаю эту ошибку include(phpmailer.php): failed to open stream: No such file or directory
Update: я забыл сказать, так как я получить доступ к этой функции таким образом Mailer::gmail('$this->email');
, где Mailer.php имеет функцию gmail.
смотреть ваше дело. При взгляде в Github класс называется 'PHPMailer', а не' phpmailer'. Также я не уверен, работает ли Phpmailer из коробки вместе с Yii. Но есть удобное расширение прав [здесь] (http://www.yiiframework.com/extension/phpmailer/). –
@chris --- Я пробовал с 'PHPMailer' и до сих пор не нахожу класс. Я также пробовал с этим расширением, и он не дает мне ошибку, но не отправляет почту. У меня есть stunnel, установленный и запущенный на всякий случай – nosthertus
Следите за своим цитированием - я думаю, что строка в вашем редакторе должна быть 'Mailer :: gmail ($ this-> email);'. Одиночные кавычки не приведут к его передаче в экземпляре. – Synchro