2016-01-23 23 views
0

我有一個關於我的網站的一個使用的下載腳本一個簡單的問題:PHP下載腳本參數 - 路徑文件名

基本上腳本被嵌入到一個下載按鈕下載一個特定的文件。但是腳本接受這樣的參數:download.php?="filename"

但是,如果我改變瀏覽器中的參數來強制腳本從「images/map.jpg」之類的不同目錄下載文件,它只會嘗試下載名爲"images-map.jpg"的文件。任何想法爲什麼?什麼應該是正確的論據?

+1

你能顯示你的代碼嗎? – RST

回答

0

首先,我建議你不要直接鏈接到文件 - 這是不安全的。最好是以某種方式映射它並將頭層重定向實現到文件中。
第二次 - 通過GET方法傳遞參數時使用urlencode()。
最後 - 請讓print_r($ _ REQUEST ['GET'])看看發送到服務器的內容。它可以是Web服務器的配置問題,也可以嘗試實現您的請求,如:http://site.example/download.php?=images/somefile.img - 這樣,Web服務器將嘗試打開somefile.img作爲文件,而不是將此參數傳遞給php腳本。