从oracle将查询结果导出并下载到PHP中的Excel文件
我在一个PHP页面中尝试了这段代码,以将Oracle的查询结果作为Excel文件下载,但当我浏览到该页面时,它就像挂起的一样是空白和白色的从oracle将查询结果导出并下载到PHP中的Excel文件,php,oracle,phpexcel,export-to-excel,Php,Oracle,Phpexcel,Export To Excel,我在一个PHP页面中尝试了这段代码,以将Oracle的查询结果作为Excel文件下载,但当我浏览到该页面时,它就像挂起的一样是空白和白色的 有什么线索吗?使用此代码,也可以在本地系统检查文件夹权限中下载excel文件 要下载excel文件,您需要设置标题。因此,只需提供文件名,即下载的excel文件的名称 在您的php文件所在的同一文件夹中,找到将显示的excel不存在。我可以将CityList.xls下载到本地吗?假设PHPExcel.php和de-SELECT都正确。。。远程用户是否有权写入
有什么线索吗?使用此代码,也可以在本地系统检查文件夹权限中下载excel文件 要下载excel文件,您需要设置标题。因此,只需提供文件名,即下载的excel文件的名称
在您的php文件所在的同一文件夹中,找到将显示的excel不存在。我可以将CityList.xls下载到本地吗?假设PHPExcel.php和de-SELECT都正确。。。远程用户是否有权写入该文件夹?你查过错误日志了吗?谢谢。尝试更新代码。但没有找到CityList.xls文件。在我的本地文件夹或web根文件夹中。使用标题和php://output 将文件发送到web浏览器。。。访问页面时,您是否在浏览器中获得“文件保存”对话框?
// Export results
require_once('PHPExcel.php');
$query = "SELECT DISTINCT TITLE, PID, TYPE, SUM(DAYCOUNT) AS tot, ROUND(SUM(DAYCOUNT)/( SELECT SUM(DAYCOUNT) FROM REPORT_LIST_VIEW), 4) AS per FROM REPORT_LIST_VIEW WHERE DAYCOUNT > '0' GROUP BY TITLE, PID, TYPE ORDER BY tot DESC";
if ($result = db_query($query)) {
// Create a new PHPExcel object
$objPHPExcel = new PHPExcel();
$objPHPExcel->getActiveSheet()->setTitle('List of Cities');
// Loop through the result set
$rowNumber = 1;
while ($row = $result->fetchAssoc()) {
$objPHPExcel->getActiveSheet()->fromArray($row,NULL,'A'.$rowNumber++);
}
// Save as an Excel BIFF (xls) file
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
$objWriter->save('CityList.xls');
}
// Export results
require_once('PHPExcel.php');
$query = "SELECT DISTINCT TITLE, PID, TYPE, SUM(DAYCOUNT) AS tot, ROUND(SUM(DAYCOUNT)/( SELECT SUM(DAYCOUNT) FROM REPORT_LIST_VIEW), 4) AS per FROM REPORT_LIST_VIEW WHERE DAYCOUNT > '0' GROUP BY TITLE, PID, TYPE ORDER BY tot DESC";
if ($result = db_query($query)) {
// Create a new PHPExcel object
$objPHPExcel = new PHPExcel();
$objPHPExcel->getActiveSheet()->setTitle('List of Cities');
// Loop through the result set
$rowNumber = 1;
while ($row = $result->fetchAssoc()) {
$objPHPExcel->getActiveSheet()->fromArray($row,NULL,'A'.$rowNumber++);
}
// Redirect output to a client’s web browser (Excel5)
header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
header('Content-Disposition: attachment;filename="CityList.xls"');
header('Cache-Control: max-age=0');
// If you're serving to IE 9, then the following may be needed
header('Cache-Control: max-age=1');
// If you're serving to IE over SSL, then the following may be needed
header ('Expires: Fri, 11 Sep 2015 05:00:00 GMT'); // Date
header ('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); // always modified
header ('Cache-Control: cache, must-revalidate'); // HTTP/1.1
header ('Pragma: public'); // HTTP/1.0
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
$objWriter->save('php://output');
exit;
}