文件上载PHP时文件无效


Invalid File on file upload PHP

upload_file.php

$allowedExts = array("jpg", "jpeg", "gif", "png", "mp3", "mp4", "wma", "MP4");
$extension = pathinfo($_FILES['file']['name'], PATHINFO_EXTENSION);
if ((($_FILES["file"]["type"] == "video/mp4")
|| ($_FILES["file"]["type"] == "audio/mp3")
|| ($_FILES["file"]["type"] == "audio/wma")
|| ($_FILES["file"]["type"] == "image/pjpeg")
|| ($_FILES["file"]["type"] == "image/gif")
|| ($_FILES["file"]["type"] == "image/jpeg"))
&& ($_FILES["file"]["size"] < 20000000)
&& 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";
  }
?>

html

<!DOCTYPE html>
<head>
<title></title>
</head>
<body>
<form action="upload_file.php" method="post" enctype="multipart/form-data">
<label for="file"><span>Filename:</span></label>
<input type="file" name="file" id="file" /> 
<br />
<input type="submit" name="submit" value="Submit" />
</form>
</body>
</html>

所以我的问题是收到消息"无效文件"。只有当我尝试上传视频类型的文件时才会发生这种情况。然而,当我尝试上传一张图片时,它就像一个魅力。我已经在stackoverflow上搜索了其他视频文件上传代码,但仍然找不到任何有效的代码。任何人如果能向我提出另一个问题/解决方案和/或解决这个问题,我们将不胜感激。

额外注意
我已经尝试添加echo "Its type is " . $_FILES["file"]["type"];来调试给定的文件类型,但它只返回了一个漂亮的空白。

更改此部件

else
  {
  echo "Invalid file";
  }

else
  {
  echo "Invalid file";
  echo "Its type is " . $_FILES["file"]["type"];
  }

现在上传不起作用的文件,并将这些类型添加到您的列表

显然,问题只是因为php.ini被设置为只接受10M,所以我上传的文件超过了15MB,所以我想它给了我错误。但这不应该告诉我错误文件太大了吗?但这基本上就是我出错的原因