2017-11-09 2 views
-1

데이터를 내보내고 첨부 파일로 Excel 파일을 삽입하고 싶습니다. codeigniter로 그것을하는 방법 2.2.4.데이터 내보내기 및 첨부 파일 보내기 Codeigniter

// PHP EXPORT DATA 
... 
... 
$objWriter = IOFactory::createWriter($objPHPExcel, 'Excel5'); 
header('Content-type: application/vnd.ms-excel'); 
header('Content-Disposition: attachment; filename="test.xls"'); 
header('Cache-Control: max-age=0'); 
$objWriter->save('php://output'); 

// SEND MAIL 
$this->load->library('email'); 
$this->email->from('[email protected]', 'Test'); 
$this->email->to('[email protected]', 'Test'); 
$this->email->subject('EXPORT DATA FILE'); 
$this->email->message("Test content"); 
$this->email->attach("INSERT HERE THE EXPORTED FILE"); 
try { 
    $this->email->send(); 
} 
catch(Exception $e) { 
    echo $e->getMessage(); 
} 
+0

당신은 단지 어딘가에서 붙여 넣기 코드를 복사합니다. 컨트롤러와 모듈은 어디에 있습니까? –

답변

0

내 컨트롤러 :

 public function export() { 
     $this->load->library('PHPExcel'); 
     $this->load->library('PHPExcel/IOFactory'); 
     $objPHPExcel = new PHPExcel(); 
     $objPHPExcel->getProperties()->setTitle("title")->setDescription("description"); 
     // Assign cell values 
     $objPHPExcel->setActiveSheetIndex(0); 
     // ///////////////////////////////////////////////////// 
     $wappi_query = 'SELECT * FROM ' . $my_table . ''; 
     $wappi_list = $this->db->query($wappi_query)->result(); 
     // ///////////////////////////////////////////////////// 
     $objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth("10"); 
     /*Protected Sheet */ 
     $objPHPExcel->getActiveSheet()->getProtection()->setSheet(false); 
     /* File information */ 
     $objPHPExcel->getProperties()->setCreator("")->setLastModifiedBy("")->setTitle("")->setSubject("")->setDescription("")->setKeywords("")->setCategory(""); 
     $objPHPExcel->getDefaultStyle()->getFont()->setName('Tahoma')->setSize(10)->setBold(false); 
     $objPHPExcel->getActiveSheet()->setCellValue('A1', "ID"); 
     $objPHPExcel->getActiveSheet()->setCellValue('B1', "UNITY"); 
     $i = 2; 
     foreach ($wappi_list as $data) { 
      $objPHPExcel->getActiveSheet()->setCellValue('A' . $i . '', $data->id); 
      $objPHPExcel->getActiveSheet()->setCellValue('B' . $i . '', $data->unity); 
      $i++; 
     } 
     $objWriter = IOFactory::createWriter($objPHPExcel, 'Excel5'); 
     header('Content-type: application/vnd.ms-excel'); 
     // It will be called file.xls 
     header('Content-Disposition: attachment; filename="unity_' . date('d-m-Y') . '.xls"'); 
     header('Cache-Control: max-age=0'); 
     $objWriter->save('php://output'); 
}