Вебсправочник
Справочник HTML

enctype: кодирование данных и загрузка файлов

Атрибут enctype задаёт формат кодирования данных при отправке HTML-формы методом POST.

Назначение

Атрибут enctype задаёт формат кодирования данных при отправке HTML-формы методом POST.

Как это работает

Для файлов обычно нужен multipart/form-data. Каждый элемент передаётся отдельной частью тела запроса, а границу частей формирует браузер. Стандартное urlencoded подходит для обычных текстовых параметров.

Пример

<form action="/upload" method="post" enctype="multipart/form-data"><label>Файл <input type="file" name="document"></label><button type="submit">Загрузить</button></form>

Что должно получиться

Форма описывает отправку файла отдельной частью запроса. Путь /upload нужно реализовать в своём учебном приложении, а не считать готовым сервисом этого справочника.

Граница применения и частая ошибка

Не задавайте вручную Content-Type multipart/form-data при отправке FormData через fetch без корректной boundary. Браузер умеет добавить нужный заголовок сам.

Самостоятельная проверка

В локальном обработчике сравните запрос с enctype и без него. Проверьте имя поля файла и ограничения размера на сервере; внешнюю загрузку в песочнице не ожидайте. Для обработчика на PHP при выборе площадки с поддержкой PHP уточните доступные значения upload_max_filesize и post_max_size, а также лимит тела запроса веб-сервера: одного multipart/form-data недостаточно.

HTML и CSS можно изменить в песочнице ниже. Она изолирована: JavaScript, внешние ресурсы и отправка форм отключены. Для проверки сетевых запросов, отправки данных или функций браузера используйте отдельную локальную страницу.

Попробуйте сами

HTML + CSS песочница
РЕЗУЛЬТАТ · ИЗОЛИРОВАННЫЙ ПРЕДПРОСМОТР
Измените код и нажмите «Запустить». JavaScript и внешние запросы отключены.
Самостоятельный учебный материал. Техническая документация: первоисточник по теме ↗. Если результат отличается, проверьте код и версию браузера.