我建立一個網站,用戶可以上傳自己的MP3和我遇到了一個小問題的空間,我解決不了:PHP MP3上傳與文件名
上傳工作正常,但只有當用戶選擇一個在其mp3-filename中沒有空格的mp3文件。像'我的漂亮的mp3 file.mp3'這樣的文件會產生$ _FILES ['file']的NULL。這與服務器配置有關嗎?
任何人都有一個想法如何解決?除了告訴用戶只是上傳mp3files沒有他們的名字空間,這是:-)
感謝名單,
Maenny
我建立一個網站,用戶可以上傳自己的MP3和我遇到了一個小問題的空間,我解決不了:PHP MP3上傳與文件名
上傳工作正常,但只有當用戶選擇一個在其mp3-filename中沒有空格的mp3文件。像'我的漂亮的mp3 file.mp3'這樣的文件會產生$ _FILES ['file']的NULL。這與服務器配置有關嗎?
任何人都有一個想法如何解決?除了告訴用戶只是上傳mp3files沒有他們的名字空間,這是:-)
感謝名單,
Maenny
嘗試urlencode()您的文件名。
如果這不起作用,請嘗試rawurlencode()。
如果不工作,我過大關:)
由於其他用戶已經表示,它可能不是導致問題的空間。我的第一個想法是檢查你的PHP的upload_limit設置得足夠高。還要記住,無論用戶調用他們的文件是什麼,您都不應該將它與該文件名一起存儲在服務器上 - 這樣做存在潛在安全漏洞的風險太大。
爲了診斷這個問題,我建議創建一個MP3文件,你知道是好的,製作2個副本 - 用空格命名一個,沒有一個名稱。然後看看是否有空格失敗。如果是這樣的話,那麼至少你知道你確實找到了你的問題的根源 - 如果沒有,那麼你已經消除了一個可能的原因,你可以看看其他地方。
嗯,我完全是這樣 - 與空格相同的文件將無法正常工作,wothout完美的作品。是的,我重命名所有文件上傳到服務器,但不過,如果我有一個NULL作爲$ _FILES ['文件']我沒有什麼可重命名...而且我還將PHP的upload_limit設置爲我在腳本中聲明的文件大小限制的兩倍...... – Maenny 2010-05-08 13:33:17
php.ini設置file_uploads設置爲On?我正在用盡可能的原因,爲什麼會發生這種情況。 – 2010-05-10 06:10:35
當然,如果不是,file_upload根本不起作用,不是嗎? – Maenny 2010-05-11 14:43:17
空格不應該導致此問題。我的網站上有一個MP3上傳器,並且沒有空間問題。我已經用「Test Name.mp3」進行了測試,它工作正常。
http://www.the-mag.me.uk/Music/Articles/Item/Add-Your-Music/
爲幫助診斷任何潛在的問題,嘗試傾出$ _FILES數組的內容,並查看是否在有什麼事情給你一個線索。
print_r($_FILES);
那麼print_r($ _ FILES)的結果是NULL,但只有在名稱中有空格時才如此。 – Maenny 2010-05-11 14:42:27
這是發生在每一個瀏覽器/你是否使用一些客戶端腳本來增強上傳選項(即閃存多文件選擇)? – 2010-05-08 14:15:17
不,我沒有增強上傳選項,但atm我只測試了Firefox和Chrome上的腳本 – Maenny 2010-05-08 15:25:09