【发布时间】:2011-07-08 03:47:11
【问题描述】:
我正在开发一个只允许上传 PDF 文件的 PHP 上传脚本。我在上传之前检查application/pdf MIME 类型。我有一个来自我的客户端的 PDF,我正在测试上传脚本,它没有通过上传错误检查并告诉我该文件是 application/download 的 MIME 类型。我确实通过 GMail 从客户端下载了 PDF。我还用我在 Photoshop 中创建的 PDF 进行了测试,脚本告诉我它也是 application/download 类型。
这是我的检查方式:
$mimeType = 'application/pdf';
if($_FILES[$filesName]['type'] != $mimeType)
{
throw new UploadErrorException('File is not of correct type.');
}
我正在尝试在我的服务器上安装 Fileinfo 扩展(根据 grunk 的建议),但现在我正在寻找没有它的东西。
有什么想法吗?谢谢!
【问题讨论】:
-
检查 MIMEtype 的唯一可靠方法是 fileinfo php.net/manual/en/book.fileinfo.php 你如何检查这些信息?您的代码的一点摘录可能会有所帮助
-
@grunk - 我刚刚添加了代码的 sn-p。我目前没有在我的服务器上安装文件信息。我现在看看能不能安装。谢谢你
-
我想如何测试这个问题,如何准备应用程序/下载 mime 类型的 pdf 文件?
标签: php file-upload mime