我不敢相信我不得不问这个,但由于某种原因,我的文件无法正常工作.它被称为ajax.php(虽然不介意这个名字),这里是确切的代码:
error_reporting(-1);
print_r($_POST);
print_r($_FILES);
?>
当我提交而不附加文件时,它会在数组中打印数据.当我提交WITH文件时,没有数组填充.
我错过了什么明显的东西?
没有档案
Array ( [MAX_FILE_SIZE] => 30000 [first] => Bob [middle] => James [last] => Smith )
Array ( [something] => Array ( [name] => [type] => [tmp_name] => [error] => 4 [size] => 0 ) )
用文件
Array ( )
Array ( )
期望与文件
Array ( [MAX_FILE_SIZE] => 30000 [first] => Bob [middle] => James [last] => Smith )
Array ( [something] => Array ( [name] => sample.jpg [type] => image/jpg [tmp_name] => whatever.jpg [error] => 0 [size] => 1248 ) )
UPDATE
它似乎正在另一台服务器上工作,它与我的WAMP完全配置,这意味着我的问题被错误地问了,因此我正在关闭它.对任何浪费时间愚蠢的人道歉.
解决方法:
这似乎是一个配置问题.我会说post_max_size太小了.这可以解释为什么上传文件时$_POST超全局为空.从手册……
If the size of post data is greater than post_max_size, the $_POST and $_FILES superglobals are empty.
您需要将此值设置为大于upload_max_filesize.例如,我的一台服务器有……
file_uploads=On
upload_max_filesize=12M
post_max_size=20M
标签:php,forms,html
来源: https://codeday.me/bug/20190703/1362555.html