[請益] 透過header下載的影音檔及壓縮檔造成損壞
在寫程式時發現 如果上傳影音檔或壓縮檔
利用
header("Content-Disposition: attachment; filename=$name");
header("Content-Type: application/octet-stream");
下載 會造成檔案損壞
可是如果使用超連結下載就不會有這問題
(確定檔案是OK 無損壞的 是利用header下載才造成損壞)
請問該如何解決這方面的問題呢???
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.220.30.237
推
03/15 11:28, , 1F
03/15 11:28, 1F
→
03/15 11:29, , 2F
03/15 11:29, 2F
→
03/15 11:30, , 3F
03/15 11:30, 3F
→
03/15 11:30, , 4F
03/15 11:30, 4F
→
03/15 11:37, , 5F
03/15 11:37, 5F
binary mode 不懂耶XD 就是利用header詢問是否下載呀
(精華區有原文 z-5-6)
<?
$name = $_GET["name"];
header("Content-Disposition: attachment; filename=$name");
header("Content-Type: application/octet-stream");
echo file_get_contents("../upfiles/imp_file/$name");
?>
這是我修改後的程式碼
可是我發現 如果不透過header下載就不會損壞
推
03/15 11:48, , 6F
03/15 11:48, 6F
請問該加在哪呢@@?
※ 編輯: claire0810 來自: 61.220.30.237 (03/15 11:52)
推
03/15 13:40, , 7F
03/15 13:40, 7F
推
03/15 13:42, , 8F
03/15 13:42, 8F
→
03/15 13:43, , 9F
03/15 13:43, 9F
我有大致找到原因喔 知識+有一個是說
我下載檔案的時候,檔案都成功的下載下來,可是問題就來了! 這些下載的檔案(各式各
樣的:jpg,doc,mp3...等),都開不了。我用notepad開這些檔案內容來看,才發現到所有
我下載下來的檔案,內容都自動被加了<html></html> 這個標籤。
我照他的方式 用notepad打開來看 編碼的確被改過了
等於說 我用header載的檔案 並不是原本的那個檔案 而是另外被編碼的檔案
※ 編輯: claire0810 來自: 61.220.30.237 (03/15 13:54)