Просмотр файлов с определенным расширением в веб-браузере?

#html #browser #file-upload

#HTML #браузер #загрузка файла

Вопрос:

В нашем веб-приложении мы разрешаем пользователям загружать файлы.

Интересно, сможем ли мы после нажатия кнопки обзор ограничить список доступных файлов для загрузки расширением файла. *.zip например. Просто чтобы упростить поиск, выберите и щелкните имя файла.

Я предполагаю, что будет базовое решение на javascript, но могу ли я сделать это без javascript?

ПРИМЕЧАНИЕ: эти вопросы касаются только создания диалогового окна просмотра для отображения меньшего количества файлов.

Комментарии:

1. Это ограничение , которого вы хотите, или вы просто хотите сделать диалог более удобным?

2. Я хочу сделать диалог просмотра более удобным для пользователей, чтобы они могли находить и выбирать файл, который они собираются загрузить. Давайте предположим, что у них есть куча файлов на рабочем столе или в папке загрузки.

3. К сожалению, это невозможно сделать, используя только HTML и JavaScript. Интересно, почему. Это было бы очень полезно…

Ответ №1:

Теоретически, <input type="file" accept="application/zip"> должно работать. К сожалению, ни один браузер mayor не поддерживает его…

Вы можете использовать JavaScript, чтобы разрешить только zip-файлы, но они все равно будут отображаться в списке.

Редактировать:

В целях ограничения вы можете использовать JavaScript, но вам все равно придется выполнять проверку на стороне сервера (например, с помощью PHP).

Для более удобного диалога вы могли бы использовать Flash или Java-апплет.

Ссылки:

Загрузчик Flash

Загрузка

Оба позволяют ограничить расширения файлов (среди многих других настроек).

Комментарии:

1. Как насчет решения javascript?

2. Вы можете использовать JavaScript только для проверки расширения файла после выбора файла . Невозможно исключить файлы, отличные от zip, из списка…

Ответ №2:

Невозможно установить фильтр расширений файлов для диалога просмотра файлов. Лучшее, что вы можете сделать на стороне клиента, это передать имя файла через функцию javascript при отправке и проанализировать расширение, чтобы узнать, является ли оно законным, прежде чем продолжить загрузку.

Всегда помните, что ваши пользователи все равно смогут загружать любые файлы, которые они выберут, независимо от того, что вы пытаетесь сделать на стороне клиента. У вас всегда должна быть проверка на стороне сервера, чтобы убедиться, что люди не загружают вредоносные скрипты.