我正在使用PHPEXxcel導出使用MYSQL生成的HTML表格及其類似。使用PHPExcel導出到xlsx
<?php $query = "SELECT `Firstname`,`Lastname`,`Branch`,`Gender`,`Mobileno`, `Email`
FROM `student_details` WHERE Branch IN ('$branch') and `Year`='$year'
and Tenthresult > '$tenth' and
Twelthresult > '$twelth' and (CGPA > '$cgpa' || CGPA = '$cgpa')";
$result = mysql_query($query);
confirm_query($result);
$objPHPExcel = new PHPExcel();
$objPHPExcel->setActiveSheetIndex(0);
$rowCount = 1;
$objPHPExcel->getActiveSheet()->SetCellValue('A'.$rowCount,'Firstname');
$objPHPExcel->getActiveSheet()->SetCellValue('B'.$rowCount,'Lastname');
$objPHPExcel->getActiveSheet()->SetCellValue('C'.$rowCount,'Branch');
$objPHPExcel->getActiveSheet()->SetCellValue('D'.$rowCount,'Gender');
$objPHPExcel->getActiveSheet()->SetCellValue('E'.$rowCount,'Mobileno');
$objPHPExcel->getActiveSheet()->SetCellValue('F'.$rowCount,'Email');
while($row = mysql_fetch_array($result)){
$rowCount++;
$objPHPExcel->getActiveSheet()->SetCellValue('A'.$rowCount, $row['0']);
$objPHPExcel->getActiveSheet()->SetCellValue('B'.$rowCount, $row['1']);
$objPHPExcel->getActiveSheet()->SetCellValue('C'.$rowCount, $row['2']);
$objPHPExcel->getActiveSheet()->SetCellValue('D'.$rowCount, $row['3']);
$objPHPExcel->getActiveSheet()->SetCellValue('E'.$rowCount, $row['4']);
$objPHPExcel->getActiveSheet()->SetCellValue('F'.$rowCount, $row['5']);
}
$objWriter = new PHPExcel_Writer_Excel2007($objPHPExcel);
$objWriter->save('some_excel_file.xlsx');
?>
它的工作,但它保存在根文件夾中xlsx檔案沒有顯示用戶,其下載的任何跡象。 當我點擊一個按鈕時,這段代碼就會失效。現在,我可以像下載郵件附件一樣下載郵件附件,並在前端顯示用戶正在下載的位置。
我嘗試使用
header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment;filename="01simple.xls"');
header('Cache-Control: max-age=0');
有了這個,我得到了我上面想,但打開顯示 消息 文件名‘「您要打開的文件’是一個當下載的XLS文件與指定的擴展名不同的格式.....等。您想現在打開嗎?
打開它包含整個HTML頁面或其簡單的空白... 任何人都可以幫助我..?
看一看,http://www.sitepoint.com/forums/showthread.php?622074-PHP-export-to-xlsx – Rafee 2013-04-09 07:00:12
請注意,您是__not__創建HTML頁面.... HTML是用於網頁的標記。使用PHPExcel,您可以使用BIFF-8文件格式或OfficeOpenXML格式創建Excel文件。 – 2013-04-09 08:13:52