2013-04-26 33 views
3

嗨StackOverFlow社區。奇怪的PHP上傳行爲

我有一個奇怪的PHP問題,我無法自己解決它,我已經嘗試了我所知道的一切。 基本上,我有一個音樂上傳網站。上傳表單有一些字段(音樂,樂隊,子類型,筆記,上傳[文件]和流派[這是用戶不需要自動寫入任何內容的字段]。「音樂」和「文件「不能爲空

好,很多音樂是正常上傳,但他們中的一些會導致奇怪的行爲

問題:。 即使填充的所有字段(包括」音樂「和」文件「,或課程)向我顯示消息(由我在劇本中寫的)」請至少感受一下音樂的名字「但是我寫了它 那麼,我如果設置了$ _POST變量,並且每次發生此錯誤,則任何$ _POST/$ _ GET變量都爲null。如果音樂需要更多時間上傳,則會發生這種情況。 此外,沒有PHP錯誤發生。沒有。

注意: - 我已經嘗試過「set_time_limit(0);」 - 我已經改變了「max_upload_size」和另一個,我以前的尺寸問題,我解決了它。最大值爲20mb,我嘗試上傳的音樂僅爲9mb。 - 我已經做了print_r($ _ POST)並返回給我「array()」,什麼都沒有。

這裏是我的代碼,如果你想看到它:

我敢肯定,錯誤是在php.ini中,我試圖把

ini_set('max_execution_time', '3600'); 
ini_set('max_input_time', '3600'); 

但大部分的時間, ini_set不起作用。

如何解決?這是非常關鍵的.. 感謝先進。

@EDIT

形式腳本文件:

對腳本中的查詢是不是上傳重要。

+0

你可以顯示用於表單的HTML嗎?如果你的POST是空的,不知何故你的請求不能發送它...我會在那裏尋找錯誤。 – Floris 2013-04-26 12:31:35

+0

是的,我可以,等一下。我會在這裏編輯。 – 2013-04-26 12:32:35

+0

'$ _FILES [「post_arquivo」] [「error」]'說了什麼?嘗試打印它。可能有幫助。 – 2013-04-26 12:35:01

回答

0

如果您無法修改php上傳大小或文章大小(假設這是導致可能的問題的原因),那麼可能需要查看某種分塊上傳解決方案。像http://www.plupload.com/可能值得一看。

這將允許您將上傳的塊保持在服務器上傳限制的下方,然後在完成上傳後重建文件服務器側。此外,您還可以在等待時向用戶顯示相當整潔的小進度條。

它有各種運行時,包括html5,需要很少的配置才能使其工作。您需要做的唯一事情就是更改表單提交流程的流程。因此,抓住表單提交,使用plupload觸發上傳,然後在上傳完成後發佈表單數據的其餘部分。

我知道這不是您遇到的問題的直接解決方案,但這是一個很好的選擇,可以避免您遇到的一些問題。