看板 PHP 關於我們 聯絡資訊
之前寫了一個檔案下載的程式 getfile.php 利用Header 下載開啟檔案。 不過最近遇到一個情形是 如果檔案是還沒有被支援的格式(像是沒灌Acrobat Reader遇到.pdf) $filename = "manul.pdf" header("Content-Type:application/pdf"); header("Content-Disposition: inline ; filename={$filename}\n"); header("Content-Transfer-Encoding: binary"); header("Content-Length: ".filesize($filename)); @readfile($filename); 在IE下會變成要如何處理"getfile.php"的下載對話框 Firefox是會出現要如何處理"manul.pdf"的對話框 這裡是要讓browser直接開啟檔案 請問http header的格式 能不能在browser遇到不認識的檔案時 變成下載指定檔案。 ..還是這又是IE下無解的問題 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.104.203.39
nidgetgod:你 IE 的版本? 我用 IE 8 來試是 ok 的 12/18 00:31
nidgetgod:另外,filename={$filename}\n"); 這一段很不解... 12/18 00:32
JYHuang:IE6 , 那段不是指定檔名給browser嗎 12/18 00:40
tka:你的clinet端有裝開啟pdf的軟體嗎? 12/18 07:16
JYHuang:我第四不就有註明在未安裝相關程式的情況下了嗎? 12/18 12:40
AndCycle:你在做不可能的要求 12/18 18:24
AndCycle:而且你內文矛盾, 他就是因為沒裝軟體不認識才變下載的 12/18 18:35
nidgetgod:你沒仔細看 filename=$filename 就好了 不用括起來 12/18 19:03
nidgetgod:推 AndCycle 的話,你的程式最後一定都會跑下載視窗 12/18 19:05
nidgetgod:這程式不管你是認識的檔案 or 不認識的檔案 都會變下載 12/18 19:06
LPH66:設定 Content-Disposition: attachment; filename=$fn 12/18 19:46
LPH66:這樣試試看? 12/18 19:46