2

当我通过简单的形式上传文件时,我得到了

Warning: POST Content-Length of 372220927 bytes exceeds the limit of 33554432 bytes in Unknown on line 0 
Notice: Undefined index: file in C:\xampp\htdocs\php_upload\upload_file.php on line 3

我将 php_ini 更改为 20M,我的问题是我想回显关于文件太大的好消息错误,没有这样的警告。我可以尝试/捕获的错误/执行。在打电话之前我可以在哪里找到有关“警告”的信息:

$_FILES["文件"]["错误"]>0

<form action="upload_file.php" method="post"
<form action="upload_file.php" method="post"
enctype="multipart/form-data">
<label for="file">Filename:</label></br>
<input type="file" name="file" id="file"></br>
<input type="text" name="desc" id="desc"></br>
<input type="submit" name="submit" value="Submit">
</form>

//

if ($_FILES["file"]["error"]>0)
  {
  echo "Error: " . $_FILES["file"]["error"] . "<br>";
  }
else
  {
  echo "Upload: " . $_FILES["file"]["name"] . "<br>";
  echo "Type: " . $_FILES["file"]["type"] . "<br>";
  echo "Size: " . ($_FILES["file"]["size"] / 1024) . " kB<br>";
  echo "Stored in: " . $_FILES["file"]["tmp_name"];
  }
4

1 回答 1

1

33554432 字节 = ~32MB

372220927 字节 = ~355MB

您需要将post_max_sizeupload_max_filesize设置为至少 355MB 绝对最小值才能允许文件上传。

请按照此示例了解如何设置 PHP 文件上传表单,在其中设置 MAX_FILE_SIZE 以便在超出该限制时向用户返回错误。检查$_FILES['userfile']['error']它是否等于UPLOAD_ERR_FORM_SIZE指示文件大于允许的常量。请注意示例中有关放置输入字段的顺序的警告

于 2012-12-19T00:55:59.980 回答