Codeigniter邮件功能将邮件发送到垃圾邮件文件夹

时间:2016-02-16 06:00:00

标签: php codeigniter email

我正在使用codeigniter邮件功能。它完美地发送邮件。但邮件一直都是垃圾邮件文件夹。我怎么能克服这个。

功能

function msg_now(){
        $this->load->library('email');
        $this->load->library('parser');

        $config['protocol'] = 'sendmail';
        $config['wordwrap'] = TRUE;
        $config['mailtype'] = 'html';
        $this->email->initialize($config);
        $email_id='test@test.com';
        $name=$this->'test';
        $this->email->from('test@gmail.com');
        $this->email->to($email_id);

        $this->email->subject('Test subject');

        $this->email->message("<p>Lorem ipsum dummy content</p>");
        $this->email->send();
}

2 个答案:

答案 0 :(得分:1)

邮件进入垃圾邮件的原因有很多,但简单的解决方法是在发送邮件之前设置邮件的标头并赋予其优先权。

以下是如何在CodeIgniter中执行此操作。该函数为set_header()

$this->email->set_header($header, $value);

另请查看this link以供参考。

它一直对我有用。

答案 1 :(得分:1)

    $this->load->library('parser');

    $config = Array(
        'protocol' => 'smtp',
        'smtp_host' => 'ssl://smtp.googlemail.com',
        'smtp_port' => 465,
        'smtp_user' => 'google email id',
        'smtp_pass' => 'password',
        'mailtype'  => 'html',
        'charset'   => 'iso-8859-1'
    );

    $this->load->library('email', $config);
    $this->email->set_newline("\r\n");
    $this->email->from('google email id','Title'); // change it to yours
    $this->email->to(your send email id);// change it to yours
    $this->email->subject('you subject');
    $this->email->message('your message');
    if($this->email->send())
    {
        return true;
    }
    else
    {
        show_error($this->email->print_debugger());
    }