2011-04-25 66 views
0

我需要一個簡單的腳本,將圖像文件下載到用戶的計算機。但是,它被填充到如下所示的PHP文件中:mydomain.com/image.php?id=234234因此我不能在下載腳本時使用它,如下所示:downloadfile.php?filename=images/1321.jpg下載IMG文件填入PHP文件?

我最好的選擇是什麼?

感謝,
庫爾頓

+0

請問你的服務器知道從哪裏與ID拉的形象呢? – afuzzyllama 2011-04-25 03:06:24

+0

它成功拉出圖像。它搜索一個mysql數據庫並從受限制的文件夾位置獲取它,所以我無法鏈接到實際的文件。 – iosfreak 2011-04-25 03:21:49

回答

2

我猜你想要的下載腳本發出一個真實的文件名,以便它會得到保存在用戶的計算機上「1321.jpg」,而不是「234234」 。

這是通過內容處置HTTP標頭完成:

Content-disposition: attachment; filename="234234.jpg" 
+0

是正確的,你可能不得不使用這個頭來重新引導用戶到一個新的頁面來調用下載。 – afuzzyllama 2011-04-25 13:36:26

+0

下載文件後用戶會去什麼?現在我通過'_blank'打開它,並且我希望窗口關閉或者其他東西。什麼是最好的方式來做到這一點?謝謝,庫爾頓。 – iosfreak 2011-04-26 23:32:37

+0

他們不應該去任何地方。大多數瀏覽器在遇到「附件」文件時,將保持在開始下載的頁面上。 – 2011-04-27 02:13:08