PHP:上传3gp视频文件

PHP:上传3gp视频文件,php,video,mime-types,Php,Video,Mime Types,我想上传。3gp视频文件到服务器通过PHP代码。我通过文件的“echo”视频类型检查了3gp视频文件的mime类型,它给出了application/octet-stream 我在下面添加了一个复选框,将其限制为仅限于少数视频格式文件,如下所示: if($_video_type != 'video/x-ms-wmv' && $_video_type != 'application/octet-stream' && $_video_type != 'video/avi

我想上传。3gp视频文件到服务器通过PHP代码。我通过文件的“echo”视频类型检查了3gp视频文件的mime类型,它给出了
application/octet-stream

我在下面添加了一个复选框,将其限制为仅限于少数视频格式文件,如下所示:

if($_video_type != 'video/x-ms-wmv' && $_video_type != 'application/octet-stream' && $_video_type != 'video/avi' && $_video_type != 'video/mpeg'){
    $_error_videotitle = 'Only WMV, MP4, MPEG, FLV, 3GP videos are allowed';
    $is_errors = true;
}
但它没有上传3gp文件,它仍然给出错误:(


请帮助,谢谢!

您是否在此处复制粘贴了代码?如果是,请注意最后还有一个空格

'application/octet-stream '

您是否在此处复制粘贴了代码?如果是,请注意最后还有一个空格

'application/octet-stream '

这不是一张很好的支票

根据PHP文件信息给出的MIME类型(假定),这一点都不好,因为它实际上不太检查内容,或者根本不检查

MIME类型通常由扩展进行检查,并且只支持少数基本扩展

任何定义为“应用程序/八位字节流”的文件基本上都是PHP/任何其他文件都不知道的格式。大多数浏览器只会下载这些类型的文件


因此,对于实际类型和工作MIME检测,我建议首先检查扩展名,然后检查应包含在此类文件中的编解码器。如果头不匹配,则文件无效…此外,对于头,只需搜索“3gp格式”例如,在谷歌上很容易找到大多数编解码器的格式。如果你找不到这样的格式,请查看这个有用的页面:

这不是一个很好的检查

根据PHP文件信息给出的MIME类型(假定),这一点都不好,因为它实际上不太检查内容,或者根本不检查

MIME类型通常由扩展进行检查,并且只支持少数基本扩展

任何定义为“应用程序/八位字节流”的文件基本上都是PHP/任何其他文件都不知道的格式。大多数浏览器只会下载这些类型的文件


因此,对于实际类型和工作MIME检测,我建议首先检查扩展名,然后检查应包含在此类文件中的编解码器。如果头不匹配,则文件无效…此外,对于头,只需搜索“3gp格式”例如,在谷歌上很容易找到大多数编解码器的格式。如果你找不到这样的格式,请查看以下有用的页面:

好吧,发生了什么?视频类型包含什么?还应该注意,这些标题是由客户端(浏览器)设置的,所以我不必依赖它们的一致性。@middaparka那么我该怎么办,你的建议是什么?@Prashant现实一点,你需要允许用户上传几乎所有内容,然后尝试在服务器上处理。(在不知道您想要实现什么的情况下,很难知道如何实现,但可能有一些命令行工具可以验证文件格式。)@middaparka,我只是尝试从一个简单的PHP表单上传视频文件,我必须检查它的实际视频文件(wmv、3gp、flv等)我们是否允许上载。那么,会发生什么?视频类型包含哪些内容?还应注意,这些标题由客户端(浏览器)设置,所以我不必依赖它们的一致性。@middaparka那么我该怎么办,你的建议是什么?@Prashant现实一点,你需要允许用户上传几乎所有内容,然后尝试在服务器上处理。(在不知道您想要实现什么的情况下,很难知道如何实现,但可能有一些命令行工具可以验证文件格式。)@middaparka,我只是尝试从一个简单的PHP表单上传视频文件,我必须检查它的实际视频文件(wmv、3gp、flv等)我们是否允许上载。您是否编辑了问题?我第一次看到时,有一个额外的空间,现在它消失了!检查您的原始代码以查看是否有任何额外的空间您是否编辑了问题?我第一次看到时,有一个额外的空间,现在它消失了!检查您的原始代码以查看是否有其他空间纽约额外空间