使用 codeigniter 中的模板发送电子邮件

Posted

技术标签:

【中文标题】使用 codeigniter 中的模板发送电子邮件【英文标题】:sending email using templates in codeigniter 【发布时间】:2013-05-13 23:04:42 【问题描述】:

我必须向我的用户发送每周报告。 我正在使用视图中的电子邮件模板。 我在控制器中的代码是

function sendWeeklyMail()
    if(!$this->session->userdata('some'))
        redirect('admin/admin','refresh');
   $data=$this->admin_model->getUserData();
   foreach($data as $u)
        $this->email->clear();

        $this->email->to($u->Email);
        $this->email->from('your@example.com');
        $this->email->subject('Here is your info '.$name);
        $this->email->message('email/report',$data,'true');
        $this->email->send();
       
   

我的问题是如何发送数据,以便我可以在消息正文中向用户显示一些数据。通常codeigniter将数据作为$data['user_data']

【问题讨论】:

【参考方案1】:

您好,您必须执行以下步骤才能使用模板发送电子邮件

$data['name'] = "Mike"; 
$data['email'] = 'mike@hissite.com';
$data['message_body'] = "any message body you want to send";

$message = $this->load->view('email/report',$data,TRUE); // this will return you html data as message
$this->email->message($message);

【讨论】:

我这样做了,但它只是在加载视图。并且电子邮件是空的,只有主题,没有正文。 您是否将第三个参数传递给查看方法 $this->load->view('view_name',$data,TRUE),将第三个参数传递为 TRUE 将返回它不会显示在浏览器中 如何传递$data变量 您将数据传递给视图,就像 CI 中的普通视图调用一样,如 $data['name']、$data['email_text'] 等等,它将只返回视图中的内容。跨度>

以上是关于使用 codeigniter 中的模板发送电子邮件的主要内容,如果未能解决你的问题,请参考以下文章

Codeigniter 和 Mandrill api,无法发送电子邮件

从 codeigniter 中的视图发送动态电子邮件附件

使用 Wamp 在 codeigniter 中发送电子邮件时出错

codeigniter 解析模板中的内容

使用cpanel在codeigniter中的cronjob

Codeigniter 发送电子邮件 OpenSSL 错误