Я пытаюсь создать сценарий, в котором я разрешаю загружать только файлы .png, .jpeg и .gif на основе типов MIME. Что у меня есть до сих пор это:
if(file_exists($root."/upload/gallery/".$_FILES["image"]["name"]))
{
$filename = explode(".",$_FILES['image']['name']);
$randomnumber = rand(0, 10000);
$imageName = $filename[0].$randomnumber.".".$filename[1];
}
else
{
$imageName = $_FILES['image']['name'];
}
$image = mysql_real_escape_string(htmlspecialchars("/upload/gallery/".$imageName));
$allowed = array('image/jpeg', 'image/png', 'image/gif');
if(in_array($_FILES['image']['name'], $allowed)){
echo "Allowed!";
die;
}
else {
echo "Not allowed!";
die;
}
Я был почти уверен, что это должно сработать. Но он всегда выдает Not allowed!
, когда я выбираю файлы с правильным типом MIME, что я здесь делаю неправильно? Код включает проверку файлов в моей папке загрузки, которые уже имеют такое же имя, и, если это так, добавляет случайное число к имени файла.