我在发送电子邮件时遇到问题,我通过电子邮件进行注册和验证,在localhost上时一切正常,没有问题,但是当我托管时,电子邮件功能无法解决,请帮助
$config = array(
'protocol' => 'smtp',
'smtp_host' => 'ssl://smtp.gmail.com',
'smtp_port' => 465,
'smtp_user' => 'email@gmail.com', // change it to yours
'smtp_pass' => 'mypassword', // change it to yours
'mailtype' => 'html',
'charset' => 'iso-8859-1',
'wordwrap' => TRUE
);
$message = "
<html>
<head>
<title>Verifikasi Kode</title>
</head>
<body>
<h2>Terima kasih telah berpartisipasi.</h2>
<p>Akun anda:</p>
<p>Email: ".$email."</p>
<p>Untuk melanjutkan pendaftaran, mohon klik link yang kami berikan</p>
<h4><a href='".base_url()."register/aktivasi/".$id."'>Activate My Account</a></h4>
</body>
</html>
";
$this->email->initialize($config);
$this->load->library('email', $config);
$this->email->set_newline("\r\n");
$this->email->from($config['smtp_user']);
$this->email->to($email);
$this->email->subject('Signup Verification Email, abcd.com | No reply');
$this->email->message($message);
if($this->email->send()){
$this->session->set_flashdata('msg','Kode Aktivasi telah dikirim ke email, mohon di cek');
}
else{
$this->session->set_flashdata('msg', $this->email->print_debugger());
}
redirect('register',$data);
}
错误:无法验证密码。错误:534-5.7.14请通过网络浏览器登录534-5.7.14,然后重试。 534-5.7.14进一步了解534 5.7.14 https://support.google.com/mail/answer/78754 18sm13749594pfp.100-gsmtp
无法使用PHP SMTP发送电子邮件。您的服务器可能未配置为使用此方法发送邮件。
答案 0 :(得分:0)
当您的访问错误时,将导致此问题。
$config = array(
'protocol' => 'smtp',
'smtp_host' => 'smtp.googlemail.com', # Change
'smtp_port' => 587, # Change
'smtp_user' => 'email@gmail.com',
'smtp_pass' => 'mypassword',
'smtp_crypto' => 'tls', # Add
'mailtype' => 'html',
'charset' => 'utf-8',
'wordwrap' => TRUE
);
确保::已在Gmail中启用Less secure apps,并且Turn off 2-Step Verification已关闭
答案 1 :(得分:0)
您应将“Access for less secure apps”
更改为Enabled(已禁用,将更改为Enable)。试试吧。