2012-07-26 65 views
1

我在寫一個上傳文件代碼,但是當我運行時,它說:未定義變量:HTTP_POST_FILES 我該如何解決這個問題?未定義變量HTTP_POST_FILES錯誤

$a=$HTTP_POST_FILES['ufile']['name']; 
+2

您應該使用'$ _FILES [ 'ufile'] [ '名']'。 '$ HTTP_POST_FILES'很古老,很多年前就棄用了。 – 2012-07-26 14:48:18

+2

使用['$ _FILES'](http://hk.php.net/manual/en/reserved.variables.files.php)。 **哪個教程**曾告訴你在** PHP 5 **中使用'$ HTTP_POST_FILES'? – 2012-07-26 14:48:39

+0

這對我有幫助...當我去[PHP手冊](http://php.net/manual/en/reserved.variables.files.php)時,如果** both * *文件和HTTP_POST_FILES被棄用,或只是後來...所以我不認爲這應該是負面投票。 – dsdsdsdsd 2013-06-17 08:40:23

回答

4

您是否在您的PHP配置中將register_global指令設置爲ON?

加嘗試使用$_FILES代替$HTTP_POST_FILES,因爲這最後一個,現在年紀大了

+0

我不認爲['$ HTTP_POST_FILES'](http://php.net/HTTP_POST_FILES)需要['register_globals'](http://php.net/register_globals)指令被打開。實際上,相關的ini設置是['register_long_arrays'](http://php.net/register_long_arrays) - 這兩個設置都被棄用btw .. – hakre 2012-07-26 14:54:01

+2

沒有變老,但**棄用** – 2012-07-26 14:54:02

2

這只是意味着你沒有定義$HTTP_POST_FILES

定義它,你應該是好的。


如果您嘗試使用現在已經過時$HTTP_POST_FILES
改爲使用$_FILES

+0

也許第二部分第一。我會說這是它沒有定義的原因。 – hakre 2012-07-26 14:52:35