如果用户忘记了密码,我正在尝试发送电子邮件。但它没有发送..这是我的控制器中的代码:
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();
}
我需要设置什么才能正确发送此电子邮件?我在open xchange中有admin@domain.com帐户。
答案 0 :(得分:0)
我不知道或曾经使用过Open Xchange,但您必须首先确保您的邮件软件(在本例中为open xchange)支持CodeIgniter使用的协议之一:
我几乎可以肯定第三种选择就是你想要的选择。只需确保允许SMTP连接到您的xchange服务器。
在您成功设置电子邮件后端之后,您可以配置codeigniter以在配置文件中使用xchange设置或将一组参数传递给电子邮件类。
答案 1 :(得分:0)
我将所有设置都放在电子邮件配置文件(email.php)中:
$config['protocol'] = 'smtp';
$config['smtp_host'] = 'mail.domain.com';
$config['smtp_port'] = 25;
$config['smtp_user'] = 'admin@domain.com';
$config['smtp_pass'] = 'password';
$config['charset'] = 'utf-8';
您的配置可能有所不同。查看此链接:http://www.namecheap.com/support/knowledgebase/article.aspx/1179/2175/general-configuration-in-mail-clients-and-mobile-devices