2013-08-05 3 views
2
public $default = array(
     'transport' => 'Mail', 
     'from' => '[email protected]', 
     'charset' => 'utf-8' 
     //'headerCharset' => 'utf-8', 
    ); 

    public $smtp = array(
     'transport' => 'Smtp', 
     'from' => array('[email protected]' => 'Project Name'), 
     'host' => 'smtp.gmail.com', 
     'port' => 465, 
     'timeout' => 30, 
     'username' => '[email protected]', 
     'password' => 'secret', 
     'client' => null, 
     'log' => false, 
     'tls' => true 
     //'charset' => 'utf-8', 
     //'headerCharset' => 'utf-8', 
    ); 

У меня есть этот параметр в моем confing-> email.php на странице ошибки я получаю формиат электронной почты, как я определил так контроллер код, но он говорит, что произошла внутренняя ошибка ...CakePHP Почта Функция Внутренняя ошибка произошла

Не удалось отправить письмо.

Ошибка: произошла внутренняя ошибка. Трассировка стека

CORE/Cake/Network/Email/MailTransport.php line 47 → MailTransport->_mail(string, string, string, string, null) 
CORE/Cake/Network/Email/CakeEmail.php line 1066 → MailTransport->send(CakeEmail) 
APP/Controller/HomeController.php line 225 → CakeEmail->send(string) 
[internal function] → HomeController->forgot() 
CORE/Cake/Controller/Controller.php line 486 → ReflectionMethod->invokeArgs(HomeController, array) 
CORE/Cake/Routing/Dispatcher.php line 187 → Controller->invokeAction(CakeRequest) 
CORE/Cake/Routing/Dispatcher.php line 162 → Dispatcher->_invoke(HomeController, CakeRequest, CakeResponse) 
APP/webroot/index.php line 93 → Dispatcher->dispatch(CakeRequest, CakeResponse) 

результат CORE/Cake/Сеть/Email/MailTransport.php линии 47 -> MailTransport -> _ почта (строка, строка, строка, строка, нуль) является

арийской @* ** .com « „Пароль инструкции по сбросу из „App““ »

Пожалуйста, нажмите на ссылку, чтобы активировать учетную запись.

Click here to activate 

В качестве альтернативы, вы можете также скопировать вставить ссылку ниже в браузере:

http://application.com/user/activation/* ** * */

Это письмо было отправлено "App" ,

«От [email protected] X-Mailer: CakePHP Email Дата: Пн, 5 августа 2013 19:08:53 +0530 Message-ID: < * @app, cm> MIME-версия: 1.0 Content-Type: text/html; кодировка = UTF-8 Content-Transfer-Encoding: 8bit» нуль

мне нужна помощь, чтобы решить эту проблему ... Я попытался Book.cakephp.org и ответ на какой-то другой вопрос, на этом сайте, но без эффекта

Я использую Cakephp2.3.8

ответ

2

Эта ошибка происходит потому, что вы не указали счет отправителя (Ex. [email protected]) в контроллере.

+2

Да, это правильно ... Я узнал об этом позже. BTW thnx за вашу помощь –

0

Я устал от игры и просто отредактировал код CakePHP для вывода массива $ params, чтобы увидеть исходную причину ошибки. Я сделал это путем редактирования файла «торт/LIBS/error.php» и добавив следующее вокруг линии 176 в функции «error500", как первые две строки следующим образом:

print_r($params); 
die(); 

Это дало мне простой массив который ясно сообщил мне, что мне не хватает таблицы в БД, которая устарела. Оттуда я быстро нашел запись в модели, которая все еще пыталась ссылаться на устаревшую таблицу. Я очистил оскорбительную модель, и теперь все хорошо с миром снова.

Read More