Атрибут enctype

Определяет способ кодирования данных формы при их отправке на сервер. Обычно устанавливать значение атрибута enctype не требуется, данные вполне правильно понимаются на стороне сервера. Однако если используется поле для отправки файла (input type="file"), следует определить атрибут enctype как multipart/form-data.

Синтаксис

<form enctype="application/x-www-form-urlencoded | multipart/form-data | text/plain">
...
</form>

Значения

application/x-www-form-urlencoded
Вместо пробелов ставится +, символы вроде русских букв кодируются их шестнадцатеричными значениями (например, %D0%90%D0%BD%D1%8F вместо Аня).
multipart/form-data
Данные не кодируются. Это значение применяется при отправке файлов.
text/plain
Пробелы заменяются знаком +, буквы и другие символы не кодируются.

Значение по умолчанию

application/x-www-form-urlencoded

Пример

<!DOCTYPE html> <html lang="ru"> <head> <meta charset="utf-8"> <title>FORM, атрибут enctype</title> </head> <body> <form action="handler.php" enctype="multipart/form-data" method="post"> <p>Загрузите файл с картинкой</p> <p><input type="file" name="pic"></p> </form> </body> </html>

Результат данного примера показан на рис. 1.

Поле для отправки файла

Рис. 1. Поле для отправки файла

Браузеры

4 12 1 4 3 1
4.4 4 14 2

В таблице браузеров применяются следующие обозначения.

  • — элемент полностью поддерживается браузером;
  • — элемент браузером не воспринимается и игнорируется;
  • — при работе возможно появление различных ошибок, либо элемент поддерживается с оговорками.

Число указывает версию браузреа, начиная с которой элемент поддерживается.