我想將文件上傳到給定資料夾。
<?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"; }; ?>
錯誤是:
注意:未定義變數:第 3 行 C:\wamp\www\sdg\import\ips.php 中的 HTTP_POST_FILES
P粉4640820612024-03-26 13:22:37
PHP 4.1 引進了超級全域。它們取代了包含從請求中提取的資料的舊的長命名數組。 $_FILES[]
已取代$HTTP_POST_FILES[]
,$_GET[ ]
取代了 $HTTP_GET_VARS[]
等等
對於後續的 PHP 4 版本,舊數組和新數組可以並排使用。 PHP 5 預設會停用舊數組的生成,並引入了php.ini< /code> 指令
register_long_arrays< /code>
可用於重新啟用舊數組的創建。
自 PHP 5.4 起,舊的長命名數組被完全刪除,並且 register_long_arrays
與它們一起消失。
結論:您正在從一個非常古老或非常糟糕的教程中學習。找一個更好的。
P粉7885713162024-03-26 09:22:47
以下是上傳檔案的一種方式,還有很多其他方式。
正如 @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 程式碼
希望這有幫助。