У меня проблема с отправкой электронной почты через SMTP Google Mail, используя электронную библиотеку от Codeigniter.Codeigniter: Не удается отправить письмо Gmail SMTP
Вот код моего контроллера:
<?php
class User extends CI_Controller{
function __construct(){
parent::__construct();
$this->load->model('user_model');
}
function forgot_password($user_id){
$data = $this->user_model->get_user_detail($user_id);
if(count($data) == 0){
$response["error"] = TRUE;
$response["error_message"] = "No user data was found";
}else{
$response["error"] = FALSE;
$pass = $data->user_password;
$ci = get_instance();
$ci->load->library('email');
$config['protocol'] = "smtp";
$config['smtp_host'] = "ssl://smtp.gmail.com";
$config['smtp_port'] = "465";
$config['smtp_timeout']="30";
$config['smtp_user'] = "[email protected]";
$config['smtp_pass'] = "*****";
$config['charset'] = "utf-8";
$config['mailtype'] = "html";
$config['newline'] = "\r\n";
$ci->email->initialize($config);
$ci->email->from('[email protected]', 'Name');
$list = array($user_id);
$ci->email->to($list);
$ci->email->subject('Test: Forgot Password');
$ci->email->message($pass);
if ($this->email->send()) {
echo 'Email sent!';
} else {
show_error($this->email->print_debugger());
}
}
}
}
?>
И это мой Код модели:
<?php
class User_model extends CI_Model{
function get_user_detail($user_id){
$this->db->where("user_id", $user_id);
$query = $this->db->get('user');
return $query->row();
}
}
?>
Я получаю такого рода ошибки, когда я использую эти функции:
PHP-ошибка был обнаружен
Существенность: предупреждение
Message: fsockopen(): SSL operation failed with code 1. OpenSSL Error messages: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed
Filename: libraries/Email.php
Line Number: 1959
Backtrace:
File: C:\xampp\htdocs\rest_api\application\controllers\owner.php
Line: 71
Function: send
File: C:\xampp\htdocs\rest_api\index.php
Line: 292
Function: require_once
A PHP Error was encountered
Severity: Warning
Message: fsockopen(): Failed to enable crypto
Filename: libraries/Email.php
Line Number: 1959
Backtrace:
File: C:\xampp\htdocs\rest_api\application\controllers\owner.php
Line: 71
Function: send
File: C:\xampp\htdocs\rest_api\index.php
Line: 292
Function: require_once
A PHP Error was encountered
Severity: Warning
Message: fsockopen(): unable to connect to ssl://smtp.gmail.com:465 (Unknown error)
Filename: libraries/Email.php
Line Number: 1959
Backtrace:
File: C:\xampp\htdocs\rest_api\application\controllers\owner.php
Line: 71
Function: send
File: C:\xampp\htdocs\rest_api\index.php
Line: 292
Function: require_once
Может ли кто-нибудь дать мне решение? Я ценю любую помощь :)
Если вы используете локальный хост, пожалуйста, убедитесь, что вы установили настройку, как по электронной почте здесь для WAMP и XAMPP https://www.youtube.com/watch?v=TO7MfDcM-Ho – user4419336
Также убедитесь, если вы используете CI 3, имя файла owner.php изменилось на первую букву контроллеров Owner.php, а модели класса и имени файла должны быть в верхнем регистре. – user4419336