У меня проблема с расширениями файлов в php.
if ($_FILES['file']['type'] != 'image/png' || 'image/jpg') {
echo "wrong type";
exit;
}
это не позволяет загружать любой тип файла
if ($_FILES['file']['type'] != ('image/png' || 'image/jpg')) {
echo "wrong type";
exit;
}
это позволяет загружать любой тип файла.
Что случилось?
Ваше условное утверждение неверно. Он должен выглядеть так:
if (($_FILES['file']['type'] != 'image/png') ||
($_FILES['file']['type'] != 'image/jpg')) {
echo "wrong type";
exit;
}
Ваш первый отрезанный всегда разрешает true из-за || 'image/jpg'
|| 'image/jpg'
всегда истинно.
Второй фрагмент разрешает ('image/png' || 'image/jpg')
значение true everytime, которое НЕ равно $_FILES['file']['type']
$_FILES
. Может быть, вам нужно также проверить JPEG и JPG?
$_FILES['file']['type'] != 'image/png' || $_FILES['file']['type'] != 'image/jpg'