成功发送后未收到codeigniter电子邮件

时间:2014-11-14 09:08:53

标签: codeigniter

我尝试使用此代码

 $config = array(
        'protocol' => 'smtp',
        'smtp_host' => 'localhost',
        'smtp_port' => 465,
        'smtp_user' => 'email@gmail.com',
        'smtp_pass' => 'password',
        'mailtype' => 'html',
        'mailpath' => '/usr/sbin/sendmail',
        'charset' => 'iso-8859-1',
        'wordwrap' => TRUE
    );
    $this->load->library('email', $config);

    $message = '';
    $this->load->library('email', $config);
    $this->email->set_newline("\r\n");
    $this->email->from('email@gmail.com'); // change it to yours
    $this->email->to('email1@gmail.com'); // change it to yours
    $this->email->subject('Resume from JobsBuddy for your Job posting');
    $this->email->message($message);
    if ($this->email->send()) {
        echo 'Email sent.';
    } else {
        show_error($this->email->print_debugger());
    } 

在这种情况下发送了电子邮件,但收件箱,垃圾邮件,垃圾箱未找到。 请帮帮我。谢谢你

2 个答案:

答案 0 :(得分:0)

您无法从localhost发送电子邮件为something@gmail.com。您的电子邮件可能会被列入黑名单,因为您的本地SMTP不是gmail.com。您应该使用gmail SMTP。

答案 1 :(得分:0)

由于您尝试使用localhost,因此未对电子邮件及其内容进行身份验证。 使用SMTP谷歌主机。

$config = Array(
    'protocol' => 'smtp',
    'smtp_host' => 'ssl://smtp:googlemail.com',
    'smtp_port' => 465,
    'smtp_user' => 'myemail@gmail.com',
    'smtp_password' => 'mypassword',
);

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

$this->email->from('setfromemail@gmail.com', 'FirstName LastName');
$this->email->to('myemail@gmail.com');
$this->email->subject('subject test');
$this->email->message('this is the body');

if($this->email->send())
{
    echo 'mail sent';
}

else
{
    show_error($this->email->print_debugger());
}