[請益] 使用HEADER下載DOC檔案後 開啟錯誤

看板PHP作者 (烏嘎蝦嘎)時間11年前 (2013/04/26 16:28), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串1/1
<?php session_start(); header('Content-type:application/msword ; charset=UTF-8'); header('Content-Transfer-Encoding: Binary'); if ( mb_strlen($_SESSION[filename], 'GBK') != strlen($filename) ) { $filename = iconv('UTF-8', 'GBK', $_SESSION[filename]); } else { $filename = $_SESSION[filename]; } $header="Content-Disposition:attachment;filename=".$filename; header($header); @readfile($_SESSION["file"]); ?> 有些變數是從SESSION取出來的 碰到的問題就是編碼的問題 DOC在打開的時候沒有辦法正常的被打開 下載的檔案少了四個位元~"~ 在OFFICE出現的錯誤是 "windows無法啟動轉換程式:mswrd632.wpc" 因為自己測試的時候有把該DOC放到WWW路徑下直接下 http://IP/XXX.doc 抓下來打開檔案是正確的 所以我是覺得是不是我header的內容下的是錯的? 想請問板上的大大有沒有什麼解決之道?! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.167.249.238 ※ 編輯: plok74122 來自: 118.167.249.238 (04/26 16:31) ※ 編輯: plok74122 來自: 118.167.249.238 (04/26 16:33)

04/26 18:05, , 1F
先看看readfile之前有沒有多餘的輸出
04/26 18:05, 1F
文章代碼(AID): #1HUZg-R6 (PHP)