2014-07-14 29 views
0

我似乎文件上傳是具有關於上傳PDF文件,並從我的測試它似乎是一個文件名長度問題的問題嗎?PHP - 受文件名長度

一個例子PDF文件的大小是24KB。

如果我嘗試將PDF像這樣的文件名上傳 - 一個SHAK定價傑克的Paint01042014.pdf - 我得到一個500內部服務器錯誤有沒有在服務器錯誤日誌。

,如果我上傳同樣的PDF文件使用的文件名 - 一個SHAK Pricelist.pdf - 它上傳罰款沒有問題。

文件名更改爲一個唯一的10位數字代碼時,上傳成功。

我懷疑原來的PDF文件名長度是真正的原因,但會是什麼?由於

我的PHP配置

file_uploads - On 
max_execution_time - 600 
max_input_time - 60 
memory_limit - 256M 
register_globals - Off 
upload_max_filesize - 32M 

回答

2

沒有實際測試,我懷疑撇號可能會造成問題。再次嘗試整個文件名的長度,但沒有撇號。如果是這種情況,您可能需要對文件名進行編碼。 A SHAK Price List Jacks Paint01042014.pdf

1

add addslashes(your_filename)在上傳到服務器之前,它會自動在特殊字符前加\,這會導致字符串中斷。 希望這個幫助:)