我的英语不太好,抱歉。
我正在使用PHP语言,并且在配置文件图片上传时出现问题 我的代码在服务器上过滤基于类型的图像我有不同类型的文件,总是来自相同的IP。
我认为这是因为我的类型检查但不确定。请帮忙!
$bild = array('jpg', 'jpeg', 'png', 'gif');
if (in_array($_FILES['image']['type'], $bild) {
mysqli_laden($_FILES);
}
答案 0 :(得分:2)
我认为mysqli_laden是一个上传到服务器的自定义函数。使用$ _FILES [“image”] [“type”]时要小心,因为它从浏览器而不是文件本身获取信息。您应该使用更可靠的finfo_open函数来验证文件的MIME类型。请在此处查看:http://www.php.net/manual/en/function.finfo-open.php
您的代码看起来像这样
$bild = array('image/jpg', 'image/jpeg', 'image/png', 'image/gif');
$image = $_FILES['image']['type'];
$finfo = new finfo(FILEINFO_MIME);
$image_inf = $finfo->file($image);
if (in_array($image_inf, $bild) {
mysqli_laden($_FILES);
}
希望这有帮助