作者MoshPit (Vortex)
看板PHP
標題[請益] 匯出成excel檔並下載
時間Mon Aug 29 14:51:48 2016
小弟想弄一個功能
可以讓使用者點擊後,匯出成EXCEL檔並下載
使用了PHPExcel套件
但是response完全是亂碼
http://i.imgur.com/GZgZ2Lt.jpg
請問有高手大大知道這樣是哪裡錯了嗎?
麻煩幫小弟解答一下吧! 感激不盡了...ORZ
另外我想請問,產生的excel檔會存在哪裡啊?
我知道問題很白痴><
但小弟是超新手,再麻煩大大們不吝解答了
以下是PHP程式碼:
<?php
ini_set("display_errors", 1);
include ('../../../../env.php');
include (_SYSTEMROOT.'sdk/PHPExcel/PHPExcel.php');
require_once _SYSTEMROOT.'sdk/PHPExcel/PHPExcel.php';
require_once _SYSTEMROOT.'sdk/PHPExcel/PHPExcel/IOFactory.php';
//新增PHPexcel物件
$objPHPExcel = new PHPExcel();
//作者(注意:以下一長串後面都沒分號結束)
$objPHPExcel->getProperties()->setCreator("888")
//上次修改者
->setLastModifiedBy("Wu Po-Han")
//檔案標題
->setTitle("測試資料標題")
//檔案子標題
->setSubject("測試資料子標題")
//檔案描述
->setDescription("檔案描述")
//檔案標記
->setKeywords("檔案標記")
//檔案類別
->setCategory("檔案類別");
//許多資料都提到是顯示目前資料表,但把0改成1就會error
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue('A1', '使用者序號')
->setCellValue('B1', '使用者名稱')
->setCellValue('C1', '使用者email')
->setCellValue('D1', '使用者資訊');
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue('A2', '資料使用者序號')
->setCellValue('B2', '資料使用者名稱')
->setCellValue('C2', '資料使用者email')
->setCellValue('D2', '資料使用者資訊');
header('Cache-Control: max-age=0');
header('Content-Type: application/xlsx; charset=utf-8');
header('Content-Disposition: attachment; filename="out.xlsx"');
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
$objWriter->save('php://output');
?>
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 60.245.65.132
※ 文章網址: https://webptt.com/m.aspx?n=bbs/PHP/M.1472453510.A.7CB.html
1F:→ crossdunk: 就有套件沒載到吧 或是沒引用到08/29 16:08
※ 編輯: MoshPit (49.215.208.128), 08/29/2016 16:15:06
2F:推 Jerr: 把結尾 ?> 拿掉看看 我猜多了後面的 \n 08/29 17:57
3F:→ joedenkidd: 你存檔編碼有改成UTF-8嗎 08/29 22:48
4F:→ joedenkidd: 還有你<? 是第一行嗎? 在這上面不你能空行 08/29 23:17