2016-01-11 33 views
0

我有一個動態生成條形碼的PHP腳本。我想腳本作爲附件/原始圖像文件下載...所以我有以下標頭集:內容處置附件瀏覽器行爲(下載與在瀏覽器中查看)

header('Content-Disposition: attachment; filename="eventbarcode.png"; Content-type: image/gif'); 
header('Content-Transfer-Encoding: binary'); 

雖然有一個古怪的事情。在Firefox中,選項可以在瀏覽器中下載或打開。在瀏覽器中打開時,它會顯示爲HTML/txt文檔。

是因爲我鏈接到的文件是「barcode.php」 - 它認爲應該是一個HTML文檔?我是否會通過使.htaccess規則通過mod-rewrite將.gif文件重定向到該腳本來解決該問題......還是我錯過了標題中的某些內容?

在此先感謝!

回答

0

對於Content-DispositionContent-Type標題,應該是兩個單獨的調用,您正在使用一個調用header函數。每個呼叫都會發送一個新標題;你不能用分號「連接」頭文件,這就是爲什麼在你的情況下Content-Type頭文件被丟棄了。

下面應該工作:

header('Content-Disposition: attachment; filename="eventbarcode.png"'); 
header('Content-type: image/gif'); 
header('Content-Transfer-Encoding: binary'); 
+0

完美!格拉西亞斯! – EZoolander