Показать сообщение отдельно
  #4 (permalink)  
Старый 20.01.2020, 17:31
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Сообщение от sdareios
вот только пользователь все равно сможет загрузить файл другого типа выбрав его в окне выбора файла
Это как? Значения accept не все браузеры в общем то слушаются так как вам хочется, но тип файла file.type будет определен (есть небольшие косяки с мелкософтовскими документами, как выяснилось, но вам это боком). А указанные типы в accept как image/jpeg,image/png... легко превратить в шаблон рег. выражения и создав по нему RegExp. Проверка file.type по этому шаблону никак не даст загрузить с диска не тот тип.

Другой тип можно загрузить только левым запросом, и в случае если сервер не проверяет данные извне. Поэтому проверка типа совсем не требует отдельного кода аж с 23 по 37 строки.


Вы мусортите в js коде вставками php, если потребуется подключение js, то это уже работать не будет.

PS. Значение accept можно превратить и в массив, искать в нем вхождение file.type (indexOf(), includes()).

Последний раз редактировалось laimas, 20.01.2020 в 17:39.
Ответить с цитированием