无法使用codeigniter 3中的SMTP gmail配置发送电子邮件

Sid*_*dhu 4 php email smtp codeigniter codeigniter-3

下面是我的代码,我参考了堆栈溢出和codeigniter用户指南中的所有示例.我仍然无法解决这个问题

public function send()
{
    $config['protocol'] = 'smtp';
    $config['smtp_crypto'] = 'ssl';
    $config['smtp_host'] = 'smtp.gmail.com';
    $config['smtp_port'] = '465';
    $config['smtp_user'] = '**********@gmail.com';
    $config['smtp_pass'] = '********';
    $config['mailtype'] = 'html';
    $config['charset'] = 'utf-8';
    $config['newline'] = "\r\n";
    $config['wordwrap'] = TRUE;
    $config['smtp_timeout'] = 30;
    $this->email->initialize($config);
    $this->email->from('uvizag@gmail.com', 'admin');
    $this->email->to('siddharthaesunuri@gmail.com, siddhu.php@gmail.com');
    $this->email->subject('Registration Verification:');
    $message = "Thanks for signing up! Your account has been created...!";
    $this->email->message($message);
    if ( ! $this->email->send()) {
        show_error($this->email->print_debugger());
    } 

}
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

在此输入图像描述

我该如何解决这个错误?可以取悦我

Quỳ*_*yễn 5

你试试这个吗?

$config = Array(
'protocol' => 'smtp',
'smtp_host' => 'ssl://smtp.googlemail.com',
'smtp_port' => 465,
'smtp_user' => 'xxx',
'smtp_pass' => 'xxx',
'mailtype'  => 'html', 
'charset'   => 'iso-8859-1'
);
$this->load->library('email', $config);
$this->email->set_newline("\r\n");

// Set to, from, message, etc.

$result = $this->email->send();
Run Code Online (Sandbox Code Playgroud)

并确保您设置了允许安全性较低的应用访问您帐户的电子邮件 帐户


小智 5

Qu?nh Nguy?n 的回答也对我有用。但是我认为值得指出的是我的代码失败了,除非我把这行

$this->email->set_newline("\r\n");
Run Code Online (Sandbox Code Playgroud)

如果没有该行,gmail 会抱怨用户/密码错误:|

问候