Конспект «Формы. Знакомство». Раздел 2
Радиокнопка
Радиокнопка — это тег <input>
с типом radio
.
Значение радиокнопки задаётся c помощью value
. Атрибут value
является для радиокнопок обязательным. Браузер отправляет на сервер значение value
выбранной радиокнопки.
Группа радиокнопок
Если добавить ещё несколько <input>
с таким же именем, но другими значениями value
, то мы получим группу радиокнопок. Имя поля у радиокнопок одной группы должно быть одинаковым, но идентификаторы всегда должны быть уникальными.
Чтобы сделать какой-либо вариант выбранным по умолчанию, нужно добавить к соответствующему тегу <input>
атрибут checked
.
Раскрывающийся список, или «селект»
Раскрывающийся список позволяет выбрать один вариант ответа из нескольких. Такой список создаётся с помощью парного тега <select>
, у которого есть атрибуты name
и id
.
Варианты ответов задаются с помощью парных тегов <option>
, которые должны располагаться внутри тега <select>
. Например:
<select name="theme">
<option value="light">Светлая тема</option>
<option value="dark">Тёмная тема</option>
...
</select>
В атрибуте value
тега <option>
задаётся значение варианта ответа, а внутри этого тега располагается подпись варианта ответа.
Если при отправке формы у выбранного варианта задан value
, то на сервер отправится значение этого атрибута. В противном случае будет отправлен текст подписи.
«Мультиселект»
Раскрывающийся список можно превратить в так называемый «мультиселект», то есть список, в котором можно выбрать несколько вариантов. Для этого нужно добавить к тегу <select>
атрибут multiple
.
Высоту мультиселекта можно изменять с помощью атрибута size
тега <select>
.
Чтобы отметить как выбранные по умолчанию одно или несколько значений, нужно к соответствующим тегам <option>
добавить атрибут selected
.
При отправке данных мультиселекта на сервер с PHP после имени в значении атрибута name
ставятся символы квадратных скобок []
. Например, <select name="days[]">
. Это необязательное требование для имени мультиселекта, оно нужно только для корректной обработки данных в PHP.
Поле для загрузки файлов
Поле для загрузки файлов — это тег <input>
с типом file
. Для этого поля обязательным атрибутом является имя.
Чтобы поле заработало и браузер смог передать выбранный файл на сервер, необходимо добавить всей форме атрибут enctype
со значением multipart/form-data
. Этот атрибут указывает браузеру, в каком виде пересылать данные. Если вы хотите отправить на сервер файл, данные из формы эффективнее всего передавать по частям. За это и отвечает значение multipart/form-data
.
Внешний вид полей с типом file
очень сильно отличается в зависимости от операционной системы и очень плохо изменяется с помощью стилей.
Скрытое поле
Скрытое поле используют, когда в форме нужно отправить какие-то дополнительные служебные данные, которые не вводятся пользователем.
Скрытое поле — это тег <input>
с типом hidden
.