【发布时间】:2014-05-19 08:13:46
【问题描述】:
我可以使用$mail->Body = "test...."; 发送文本邮件,但是当我使用模板时,它不起作用。
$mail->IsHTML(true);
$mail->Body = $this->load->view("contact", $this->home_data, true);
【问题讨论】:
标签: codeigniter email phpmailer
我可以使用$mail->Body = "test...."; 发送文本邮件,但是当我使用模板时,它不起作用。
$mail->IsHTML(true);
$mail->Body = $this->load->view("contact", $this->home_data, true);
【问题讨论】:
标签: codeigniter email phpmailer
您需要在控制器中调用$this->load->library('email'); 以及 CI 中的电子邮件才能工作。
此外,在您的代码中:$fromemail 未初始化。
您需要在您的服务器上支持 SMTP。
$config 应在分配值和键之前声明为数组。
工作代码:
$this->load->library('email');
$fromemail="ad@c.com";
$toemail = "user@email.id";
$subject = "Mail Subject is here";
$mesg = $this->load->view('template/email',true);
$this->load->library('email');
$config=array(
'charset'=>'utf-8',
'wordwrap'=> TRUE,
'mailtype' => 'html'
);
$this->email->initialize($config);
$this->email->to($toemail);
$this->email->from($fromemail, "Title");
$this->email->subject($subject);
$this->email->message($mesg);
$mail = $this->email->send();
编辑:$mesg = $this->load->view('template/email',true); 应该是 lycanian 所指出的。通过将其设置为 true ,它不会将数据发送到输出流,而是会以字符串的形式返回。
这对我有用,试试吧。
【讨论】: