通过PHPExcel、Codeigniter和Ajax导出到Excel
我想用PHPExcel导出xls并使用Codeigniter和AJAX,但我没有得到任何文件,请帮助我 按钮的HTML代码:通过PHPExcel、Codeigniter和Ajax导出到Excel,php,ajax,codeigniter,phpexcel,Php,Ajax,Codeigniter,Phpexcel,我想用PHPExcel导出xls并使用Codeigniter和AJAX,但我没有得到任何文件,请帮助我 按钮的HTML代码: <button class="buttonExcel" id="ButtonExcel" onclick="getExcel()" ></button> 代码似乎运行良好,唯一无法获取文件的原因是允许浏览器中出现弹出窗口 我通过将此标题替换为控制器中较旧的标题修复了此问题: header("Pragma: public"); header("Ex
<button class="buttonExcel" id="ButtonExcel" onclick="getExcel()" ></button>
代码似乎运行良好,唯一无法获取文件的原因是允许浏览器中出现弹出窗口 我通过将此标题替换为控制器中较旧的标题修复了此问题:
header("Pragma: public");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Content-Type: application/force-download");
header("Content-Type: application/octet-stream");
header("Content-Type: application/download");;
header("Content-Disposition: attachment;filename=$filename");
这个问题与弹出窗口无关,但我激活了弹出窗口,当我运行此页面时,AJAX代码的错误部分正在运行,并向我显示一个警报,该警报位于错误AJAX中,在浏览器控制台中,create_result()函数只显示:ÐÏa;5月5日日的现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场5 5 5 5 5 5 5 5 5 5 5 5现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5你会为此张贴ans吗。我遇到了同样的问题,没有得到任何解决办法。
public function create_result()
{
set_time_limit(600);
$this->load->model('tops/Posts_model');
$list = $this->Posts_model->create_result();
require(APPPATH."third_party/PHPExcel-1.8/Classes/PHPExcel.php");
require(APPPATH."third_party/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel5.php");
$objPHPExcel = new PHPExcel();
$objPHPExcel->getProperties()->setCreator("");
$objPHPExcel->getProperties()->setLastModifiedBy("");
$objPHPExcel->getProperties()->setTitle("");
$objPHPExcel->getProperties()->setSubject("");
$objPHPExcel->getProperties()->setDescription("");
$objPHPExcel->setActiveSheetIndex(0);
$sheet = $objPHPExcel->getActiveSheet();
$sheet->setCellValue("A1","text");
$sheet->setCellValue("B1","time");
$sheet->setCellValue("C1","date");
$sheet->setCellValue("D1","type");
$sheet->setCellValue("E1","view");
$row = 2;
foreach ($list as $key => $value)
{
$sheet->setCellValue("A".$row,$value['MsgText']);
$sheet->setCellValue("B".$row,$value['MsgTime']);
$sheet->setCellValue("C".$row,$value['MsgDate']);
$sheet->setCellValue("D".$row,$value['MsgType']);
$sheet->setCellValue("E".$row,$value['CountView']);
$row++;
}
$filename = "Task-Exportet-on-".date("Y-m-d-H-i-s").".xls";
$sheet->setTitle("Task-Overview");
header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'); //mime type
header('Content-Disposition: attachment;filename="'.$filename.'"'); //tell browser what's the file name
header('Cache-Control: max-age=0');
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
//force user to download the Excel file without writing it to server's HD
$objWriter->save('php://output');
set_time_limit(30);
exit;
}
header("Pragma: public");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Content-Type: application/force-download");
header("Content-Type: application/octet-stream");
header("Content-Type: application/download");;
header("Content-Disposition: attachment;filename=$filename");