无法在Codeigniter中发送电子邮件,没有错误消息。本地或远程

时间:2013-05-26 17:40:55

标签: php codeigniter email

我正在使用MAMP和CodeIgniter 2.1.3(最新版本)并尝试发送电子邮件。我已经阅读了各种教程,据我所知,我的代码中没有错误。我需要一些帮助解密问题的地方,因为每次我运行该功能,本地或当我上传它时,我只收到一个空白页面。 根本没有在屏幕上打印任何内容。

我尝试以我知道的方式设置$config数组,但没有任何变化。即$config['protocol'] = 'smtp';$config = Array( 'protocol' => 'smtp', 'smtp_host => 'ssl://smtp.googlemail.com');

我无法理解为什么它不起作用,我已经通过电子邮件库,我已经正确编写了所有配置。是否有一些我看不到的语法错误?

<?php 

class Email extends CI_Controller
{
    function __construct()
    {
        parent::Controller();
    }

    function index()
    {


        $config['protocol'] = 'smtp';
        $config['mail_path'] = 'ssl://smtp.googlemail.com';
        $config['smtp_host'] = 'ssl://smtp.googlemail.com';
        $config['smtp_port'] = 465;
        $config['smtp_user'] = 'MYEMAIL@gmail.com'
        $config['smtp_pass'] = 'PASSWORD';

    $this->load->library('email', $config);
    $this->email->set_newline("\r\n");

    $this->email->from('MYEMAIL@gmail.com', 'THIS GUY');
    $this->email->to('MYEMAIL@gmail.com');
    $this->email->subject('Email test bitches');
    $this->email->message('This is working, I hope');

        if($this->email->send())
        {
            echo "Da email, da email, wut wut da emails";
        }else{
            show_error($this->email->print_debugger());

        }
    }
}

我必须在屏幕上打印的错误如下

解析错误:语法错误,第18行/Applications/MAMP/htdocs/codeigniter/application/controllers/email.php中的意外'$ config'(T_VARIABLE)

然后我看到它缺少;并且我把它放入但是现在页面没有加载:/。已添加ssl://,现在我收到了Google的错误报告。至少我可以解决这个问题。

谢谢:)

1 个答案:

答案 0 :(得分:2)

你应该得到错误。可能您处于生产环境中并且关闭了错误报告。问题出在你的构造函数上。用它改变它 -

function __construct()
{
    parent::__construct();
}

启用错误报告。 Check how

编辑:

你忘了在这行中加分号

$config['smtp_user'] = 'MYEMAIL@gmail.com'