【问题标题】:PHP file upload not working for mp4PHP文件上传不适用于mp4
【发布时间】:2014-09-10 19:25:25
【问题描述】:

一旦用户提交表单,我正在检查文件是否为 mp4 格式,这对我不起作用:

if(!($_FILES["videoFile"]["type"] == "video/mp4"))
{
   // error handling
}

该文件类型适用于其他文件类型,例如 png/jpg 等,但不适用于 mp4。

echo $_FILES["videoFile"]["type"] = [tmp_name] 
echo $_FILES["videoFile"]["name"] = movie_300.mp4

当我打印出我得到的文件数组时:

Array ( [videoFile] => Array ( [name] => movie_300.mp4 [type] => [tmp_name] => [error] => 1 [size] => 0 ))

为什么上传 mp4 时我的文件类型是 [tmp_name]?

【问题讨论】:

  • 你检查过 $_FILES["videoFile"]["type"] 的值了吗?
  • 你能把 提交时。
  • 您还可以检查输入的名称videoFilevideofile 不同。也尝试“积极”的方法if($_FILES["videoFile"]["type"] == "video/mp4"){...} else{...}
  • 我确实有。我刚刚制作了一个 1 秒的 mp4,它可以工作。感谢您的帮助,这个网站上的大多数人对新用户没有耐心。

标签: php file-upload mp4


【解决方案1】:

您已超出最大文件上传大小,请参阅here

您可以使用脚本顶部的以下指令来增加此值:

ini_set('upload_max_filesize', '10M'); // set max size to 10M (or whatever)

【讨论】:

    【解决方案2】:

    这是一个简洁的小功能。

    http://subinsb.com/php-find-file-mime-type

    我会小心你的验证,因为我很确定 mime 很容易被欺骗。也许有更多安全经验的人可以权衡这个问题。我至少会执行一些其他检查。

    干杯!

    【讨论】:

      猜你喜欢
      • 2016-07-12
      • 2013-11-08
      • 1970-01-01
      • 2015-04-08
      • 1970-01-01
      • 1970-01-01
      • 2021-09-15
      • 2012-08-02
      • 2015-03-31
      相关资源
      最近更新 更多