CakeEmail无法发送电子邮件

时间:2012-11-06 08:50:50

标签: email cakephp cakephp-2.2

我需要帮助的人。我不能让这个工作。你能帮帮我吗?

提前致谢!

配置/ email.php

public $default = array(
        'transport' => 'Mail',
        'from' => 'sender@yahoo.com',
        'charset' => 'utf-8',
        'headerCharset' => 'utf-8',
);

FeedbacksController.php

App::uses('AppController', 'Controller');
App::uses('CakeEmail', 'Network/Email');
*
*
*
public function send() {
     $email    = new CakeEmail('default');
     $email->emailFormat('text')
           ->to('recipient@yahoo.com')
           ->from('sender@yahoo.com')
           ->send('Message Body');
}

上面的代码给出了一个错误:

无法发送电子邮件。

Error: An Internal Error Has Occurred.

2 个答案:

答案 0 :(得分:1)

你可以用这个: 在app / config / email.php中添加这个新配置

public $gmail = array(
    'host' => 'ssl://smtp.gmail.com',
    'port' => 465,
    'username' => 'adresse@gmail.com',
    'password' => 'secret',
    'transport' => 'Smtp',
    'timeout' => 1
);

之后,在您的控制器中,您必须致电:

$email    = new CakeEmail('gmail');

就是这样。

答案 1 :(得分:0)

根据我的经验,我将问题设置为 - >从单个字符串开始,并且发现从(array('emailaddress'=>'name'))执行 - >更为成功。

我还不确定是否需要设置主题值才能成功运作?