質問編集履歴

2

さらに追記しました

2016/11/02 02:34

投稿

ao_love
ao_love

スコア441

test CHANGED
File without changes
test CHANGED
@@ -300,10 +300,20 @@
300
300
 
301
301
  ### 追記
302
302
 
303
- DLときはこちらを使用
303
+ seastar3さんからのご回答で肝心のDL仕様のコードを載ていないこに気づましたので追記させていただきます。
304
+
305
+
306
+
307
+
304
308
 
305
309
  ```PHP
306
310
 
311
+ // DLさせるときはこちらを使用
312
+
313
+ // header('Content-Type: application/force-download'); #1
314
+
315
+ // header('Content-Type: application/vnd.ms-excel'); #2
316
+
307
317
  header('Content-Type: application/octet-stream');
308
318
 
309
319
  ob_end_clean();//バッファのゴミ捨て
@@ -322,6 +332,16 @@
322
332
 
323
333
  ```
324
334
 
335
+ Content-Typeについてはコメントアウトしてあるものも含めてすべて試してみましたがすべて同じ結果でした。
336
+
337
+ 動きとしては他ページのボタンから`target="_blrank"`でリンクしています。
338
+
339
+ `$writer->save('php://output');`
340
+
341
+ をコメントアウトするとシート名の正しい空のエクセルが出力されます…。
342
+
343
+
344
+
325
345
 
326
346
 
327
347
 

1

DL時に使用するコードを載せていなかったので追記

2016/11/02 02:34

投稿

ao_love
ao_love

スコア441

test CHANGED
File without changes
test CHANGED
@@ -298,4 +298,32 @@
298
298
 
299
299
 
300
300
 
301
+ ### 追記
302
+
303
+ DLさせるときはこちらを使用
304
+
305
+ ```PHP
306
+
307
+ header('Content-Type: application/octet-stream');
308
+
309
+ ob_end_clean();//バッファのゴミ捨て
310
+
311
+ header('Content-Disposition: attachment;filename='.$output);
312
+
313
+ header('Cache-Control: max-age=0');
314
+
315
+
316
+
317
+ $writer = PHPExcel_IOFactory::createWriter($book, "Excel2007");
318
+
319
+ $writer->save('php://output');
320
+
321
+ exit();
322
+
323
+ ```
324
+
325
+
326
+
327
+
328
+
301
329
  よろしくお願いいたします。