我已经在View上创建了表,现在我想使用CodeIgniter将它报告给Excel(PHPExcel),我试图找到一个简单的报告系统,到目前为止我的脚本在控制器上:
function excel(){
$data['bf']=$this->report->branch();
$tahun = $this->input->post('tahun');
$branch= $this->input->post('branch');
/*$data['data'] = $this->report->getdata($tahun);
$data['data2'] = $this->report->getdata($tahun);
// $data['bfb'] = $this->report->getdata($tahun,$branch); */
$data['show'] = $this->report->show();
$data['bal'] = $this->report->getbal($tahun);
$data['bdg'] = $this->report->getbdg($tahun);
$data['bgr'] = $this->report->getbgr($tahun);
$data['bjm'] = $this->report->getbjm($tahun);
$data['bkp'] = $this->report->getbkp($tahun);
$data['bks'] = $this->report->getbks($tahun);
$data['bnk'] = $this->report->getbnk($tahun);
$data['crb'] = $this->report->getcrb($tahun);
$data['jkt'] = $this->report->getjkt($tahun);
$data['jktm'] = $this->report->getjktm($tahun);
$data['jmb'] = $this->report->getjmb($tahun);
$data['knd'] = $this->report->getknd($tahun);
$data['lpg'] = $this->report->getlpg($tahun);
$data['mad'] = $this->report->getmad($tahun);
$data['mdn'] = $this->report->getmdn($tahun);
$data['mks'] = $this->report->getmks($tahun);
$data['mlg'] = $this->report->getmlg($tahun);
$data['pkb'] = $this->report->getpkb($tahun);
$data['plb'] = $this->report->getplb($tahun);
$data['pnt'] = $this->report->getpnt($tahun);
$html = $this->load->view('report/report', $data, true);
$tmpfile = time().'.html';
file_put_contents($tmpfile, $html);
$reader = new PHPExcel_Reader_HTML;
$content = $reader->load($tmpfile);
// Pass to writer and output as needed
$objWriter = PHPExcel_IOFactory::createWriter($content, 'Excel5');
$objWriter->save('excelfile.xls');
unlink($tmpfile);
}
当我使用该脚本时,我无法下载它,请更正我的脚本,谢谢
答案 0 :(得分:1)
看看我的演示项目,我在Codeigniter中做了excel导出 https://github.com/eboominathan/Basic-CRUD-in-Codeigniter
答案 1 :(得分:0)
function excel(){
$CI->load->library('Excel');
$data['bf']=$this->report->branch();
$tahun = $this->input->post('tahun');
$branch= $this->input->post('branch');
/*$data['data'] = $this->report->getdata($tahun);
$data['data2'] = $this->report->getdata($tahun);
// $data['bfb'] = $this->report->getdata($tahun,$branch); */
$data['show'] = $this->report->show();
$data['bal'] = $this->report->getbal($tahun);
$data['bdg'] = $this->report->getbdg($tahun);
$data['bgr'] = $this->report->getbgr($tahun);
$data['bjm'] = $this->report->getbjm($tahun);
$data['bkp'] = $this->report->getbkp($tahun);
$data['bks'] = $this->report->getbks($tahun);
$data['bnk'] = $this->report->getbnk($tahun);
$data['crb'] = $this->report->getcrb($tahun);
$data['jkt'] = $this->report->getjkt($tahun);
$data['jktm'] = $this->report->getjktm($tahun);
$data['jmb'] = $this->report->getjmb($tahun);
$data['knd'] = $this->report->getknd($tahun);
$data['lpg'] = $this->report->getlpg($tahun);
$data['mad'] = $this->report->getmad($tahun);
$data['mdn'] = $this->report->getmdn($tahun);
$data['mks'] = $this->report->getmks($tahun);
$data['mlg'] = $this->report->getmlg($tahun);
$data['pkb'] = $this->report->getpkb($tahun);
$data['plb'] = $this->report->getplb($tahun);
$data['pnt'] = $this->report->getpnt($tahun);
$html = $this->load->view('report/report', $data, true);
$filename = 'Report Data Actual vs Target Branch '.date('Y-m-d').'.xls'; //save our workbook as this file name
header('Content-Type: application/vnd.ms-excel'); //mime type
header('Content-Disposition: attachment;filename="' . $filename . '"'); //tell browser what's the file name
header('Cache-Control: max-age=0'); //no cache
//save it to Excel5 format (excel 2003 .XLS file), change this to 'Excel2007' (and adjust the filename extension, also the header mime type)
//if you want to save it as .XLSX Excel 2007 format
$objWriter = PHPExcel_IOFactory::createWriter($CI->excel, 'Excel5');
//force user to download the Excel file without writing it to server's HD
$objWriter->save('php://output');