PHP будет проверять каждое условие, пока не найдет что-то, что true
.Это означает, что даже если ваш файл является PDF-файлом, условие $extdic != "jpg"
сработает и вернет true, тем самым выполнив вызов header.
Вы можете создать массив всех разрешенных расширений и проверить,расширение текущего файла существует в этом списке.Если это не так, перенаправьте прочь!Вы также должны позвонить exit;
после header("Location: ..");
вызова.
Я также добавил strtolower()
, если входящий файл имеет расширение в верхнем регистре (например, myFile.JPG
).
if(!in_array(strtolower($extdic), ["pdf", "jpg", "jpeg"])) {
header('Location:fileko.php');
exit;
}