我想將文件上傳到給定資料夾。
<?php $folder = "upload/"; if (is_uploaded_file($HTTP_POST_FILES['filename']['tmp_name'])) { if (move_uploaded_file($HTTP_POST_FILES['filename']['tmp_name'], $folder.$HTTP_POST_FILES['filename']['name'])) { echo "File uploaded"; } else { echo "File not moved to destination folder. Check permissions"; }; } else {s echo "File is not uploaded"; }; ?>
錯誤是:
注意:未定義變數(shù):第 3 行 C:\wamp\www\sdg\import\ips.php 中的 HTTP_POST_FILES
PHP 4.1 引進(jìn)了超級全域。它們?nèi)〈税瑥恼埱笾刑崛〉馁Y料的舊的長命名數(shù)組。 $_FILES[]
已取代$HTTP_POST_FILES[]
,$_GET[ ]
取代了 $HTTP_GET_VARS[]
等等
對於後續(xù)的 PHP 4 版本,舊數(shù)組和新數(shù)組可以並排使用。 PHP 5 預(yù)設(shè)會停用舊數(shù)組的生成,並引入了php.ini 指令
register_long_arrays
可用於重新啟用舊數(shù)組的創(chuàng)建。
自 PHP 5.4 起,舊的長命名數(shù)組被完全刪除,並且 register_long_arrays
與它們一起消失。
結(jié)論:您正在從一個非常古老或非常糟糕的教程中學(xué)習(xí)。找一個更好的。
以下是上傳檔案的一種方式,還有很多其他方式。
正如 @nordenheim 所說,$HTTP_POST_FILES
自 PHP 4.1.0 起已被棄用,因此不建議使用它。
PHP 程式碼(upload.php)
5000000) { $msg = "Sorry, your file is too large."; } elseif (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $target_file)) { $msg = "The file " . basename($_FILES["fileToUpload"]["name"]) . " has been uploaded."; } } ?>
啟動功能的 HTML 程式碼
希望這有幫助。