如何使用Uploadify插件进行服务器端验证


How to do Server side validation using Uploadify plugin?

我想对使用jQuery Uploadify插件上传的单个文件进行以下验证。

  1. 检查文件类型.jpg、.png&gif
  2. 检查文件大小最大值仅为2MB

我已经通过fileExt&sizeLimit选项,但正如插件开发人员所说,可以轻松绕过fileExt验证&建议进行服务器端验证。

我想使用PHP服务器端脚本语言来完成这项工作。

我已经检查了插件的文档&没有发现任何有用的东西。有人能建议一下怎么做吗?

提前谢谢。

我建议使用filesize和exif_imagetype函数来评估文件。以下内容应该为您指明正确的方向:

$up_file = "file_the_user_uploaded";
$two_mb = 2097152;
if (filesize($up_file) < $two_mb) {
    if (exif_imagetype($up_file) > 0 && exif_imagetype($up_file) < 4) {
        // the file is .gif, .jpg, or .png and less than 2MB
        // do something to approve the file upload
    }
}

注意,PHP中的filesize()函数返回的大小以字节为单位,因此,文件应该小于$two_mb字节。此外,exif_imagetype()返回映射到上传图像的MIME类型的整数码:1、2、3,分别为.gif.jpg.png

您需要对处理文件上传的脚本进行验证。这不是预验证。

您可以使用exif_imagetype来确保它是一个图像文件。

使用filesize($_FILES['file']['tmp_name']) < 2000000验证文件的大小。