0

我遇到了文件上传问题。

我已经搜索了答案,但只找到了“增加 post_max_size 和 upload_max_filesize”的建议,这对我不起作用。

我无法上传大文件(约 20MB)小于 8MB 的文件可以正常工作,但任何更大的文件似乎都不起作用...我没有收到任何错误消息,但是当上传完成时,屏幕为空白,文件为在上传目录中找不到,以下是我的 php.ini 设置和我的环境

max_input_time -1
max_execution_time 600
memory_limit 512M
upload_max_filesize 100M
post_max_size 100M

那么,有什么想法吗?我真的被困在这里无法解决这个问题。请帮忙。

4

2 回答 2

0

使用此代码进行文件上传

<?php
    $allowedExts = array("pdf", "mp3");
    $extension = end(explode(".", $_FILES["file"]["name"]));
    if ((($_FILES["file"]["type"] == "pdf")
    || ($_FILES["file"]["type"] == "mp3")
    && ($_FILES["file"]["size"] < 20000)
    && in_array($extension, $allowedExts))
      {
      if ($_FILES["file"]["error"] > 0)
        {
            echo "Return Code: " . $_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 "Temp file: " . $_FILES["file"]["tmp_name"] . "<br />";
            if (file_exists("upload/" . $_FILES["file"]["name"]))
              {
                  echo $_FILES["file"]["name"] . " already exists. ";
              }
            else
              {
                  move_uploaded_file($_FILES["file"]["tmp_name"],
                  "upload/" . $_FILES["file"]["name"]);
                  echo "Stored in: " . "upload/" . $_FILES["file"]["name"];
              }
        }
      }
    else
      {
      echo "Invalid file";
      }
    ?>
于 2012-11-09T06:57:40.670 回答
0
$_FILES["file"]["size"] < 20000 

20000 约为。20KB 不是 20MB

于 2012-11-09T07:27:54.587 回答