我正在使用Tank Auth和codeigniter在注册时对用户进行电子邮件验证。注册后显示"注册成功。查看您的激活电子邮件。"但我没有收到任何激活电子邮件。
我在Application / config / email.php中使用的设置如下:
$config['protocol'] = "smtp";
$config['smtp_host'] = "ssl://smtp.googlemail.com";
$config['smtp_port'] = "465";
$config['smtp_user'] = "My Gmail";//also valid Google Apps Accounts
$config['smtp_pass'] = "My Password";
$config['mailtype'] = 'html';
$config['charset'] = 'utf-8';
$config['newline'] = "\r\n";
TankAuth在Controller中使用的默认邮件功能:
function _send_email($type, $email, &$data)
{
$this->load->library('email');
$this->email->from($this->config->item('webmaster_email', 'tank_auth'), $this->config->item('website_name', 'tank_auth'));
$this->email->reply_to($this->config->item('webmaster_email', 'tank_auth'), $this->config->item('website_name', 'tank_auth'));
$this->email->to($email);
$this->email->subject(sprintf($this->lang->line('auth_subject_'.$type), $this->config->item('website_name', 'tank_auth')));
$this->email->message($this->load->view('email/'.$type.'-html', $data, TRUE));
$this->email->set_alt_message($this->load->view('email/'.$type.'-txt', $data, TRUE));
$this->email->send();
}
我还需要做其他事吗?因为我没有收到使用这些设置的任何激活电子邮件。
提前致谢。
答案 0 :(得分:0)
尝试以下设置:
$config['protocol'] = 'smtp';
$config['charset'] = 'iso-8859-1';
$config['mailtype'] = 'html';
$config['smtp_host'] = 'ssl://smtp.gmail.com';
$config['smtp_port'] = '465';
$config['smtp_user'] = 'My Gmail';
$config['smtp_pass'] = 'My Password';
在发送邮件功能中,添加在'from'
之前设置新的行代码$this->email->set_newline("\r\n");
$this->email->from($this->config->item('webmaster_email', 'tank_auth'), $this->config->item('website_name', 'tank_auth'));