上传脚本以仅允许具有PNG扩展名的文件

时间:2015-07-15 15:33:00

标签: php

如何制作此代码,以便只允许上传PNG文件? 有人可以向我解释一下吗?

if (isset($_FILES["userfile"]) && !empty($_FILES["userfile"])) {
        $image = $_FILES['userfile']['tmp_name'];
        $imageName = $_FILES['userfile']['name'];
        $imageSize = $_FILES['userfile']['size'];
        $imageType = $_FILES['userfile']['type'];
        $len = count($image);
        $path = "uploads/furnipack/images/";
        for ($i = 0; $i < $len; $i++) {
             if (isset($imageName[$i]) && $imageName[$i] !== NULL) {
                 if(move_uploaded_file($image[$i], $path.$imageName[$i])) {
                    $result = $mysqli->query("INSERT INTO imageTable (imageName, imageCategory, imageSize, imageType) VALUES ('$imageName[$i]', '$imageCategory', '$imageSize[$i]' , '$imageType[$i]' )");
                     $melding = "Item is succesvol geupload!";
                 }
             }
        }
}

2 个答案:

答案 0 :(得分:0)

从图片名称,获取扩展程序并尝试检查基于扩展名上传的图片

N=

答案 1 :(得分:0)

我相信这个问题已经在堆栈溢出上多次回答,只需检查图像的扩展名,对于更安全的站点,您可能还需要检查下面这些页面中讨论的exif数据 Only allow .jpg and .png files only How can I only allow certain filetypes on upload in php?