2013-05-17 50 views
3

我正在處理圖片上傳流程,並在測試後遇到一個奇怪的問題。我們正在嘗試使用下面的文件名來測試它:

[email protected]#$%^&()_+qwertyuiop[]{}asdfghjkl;'zxcvbnm,.png 

形式的帖子後,我看它在$ _FILES對象,名字我得到的回覆是:

zxcvbnm,..png 

(這兩個點不是拼寫錯誤)

一旦調查了這一點,我聽說它可能與魔術引號有關。我試過把它關掉,但沒有成功。有任何想法嗎?此外,下面的代碼...

$size = sizeof($_FILES['userfile']['name']); 
for($i = 0; $i < $size; $i++) { 
    $file_name = $_FILES['userfile']['name'][$i]; 
    $file_path = $_FILES['userfile']['tmp_name'][$i]; 
    $file_error = $_FILES['userfile']['error'][$i]; 
    ... 

$ file_name變量是什麼得到修剪。思考?

+1

而你正在做手工後在瀏覽器中,在資源管理器文件選擇與「名」? –

+0

@JoopEggen你可以用這個名字創建文件,這對檢測非常用字符的問題是一件好事。在我的測試中,我通常會嘗試註冊這樣的用戶名,以查看是否有東西(通常是從某些lib中合併的)接受它,或者一切都到了地獄。 –

+0

@CarlosCampderrós是的,我很驚訝這樣的測試是想到的。我問是否確實是手動完成的,因爲_automated_測試可能會做錯。這個'.'的重複是令人困惑的。 - 它看起來像一個URL重寫。 –

回答

相關問題