Конспект «Формы. Знакомство». Раздел 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.