2013-05-19 25 views
10

Tôi phải gửi báo cáo hàng tuần cho người dùng của mình. Tôi đang sử dụng mẫu email từ chế độ xem. Mã của tôi trong bộ điều khiển làgửi email bằng các mẫu trong mã vạch

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('[email protected]'); 
     $this->email->subject('Here is your info '.$name); 
     $this->email->message('email/report',$data,'true'); 
     $this->email->send(); 
     } 
    } 
} 

Câu hỏi của tôi là làm thế nào để gửi dữ liệu để tôi có thể hiển thị cho người dùng một số dữ liệu trong cơ thể của thông điệp. Thường CodeIgniter mất dữ liệu như $ data [ 'user_data']

Trả lời

20

hi bạn phải làm các bước sau đây để gửi email bằng mẫu

$data['name'] = "Mike"; 
$data['email'] = '[email protected]'; 
$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); 
+0

tôi đã làm điều đó nhưng nó chỉ đang tải xem. và email trống với chủ đề và không có nội dung. – spod

+1

là bạn truyền tham số thứ ba để xem phương thức $ this-> load-> view ('view_name', $ data, TRUE), chuyển tham số thứ ba như TRUE sẽ trả về nó sẽ không hiển thị trong trình duyệt – umefarooq

+0

Nó đã được giải quyết. – spod