Реальный пиарHTMLУроки HTML → Создание форм в HTML

Создание форм в HTML

html теги

Я абсолютно уверен, что, бегая по Интернету, Вы ни раз встречали различные формы, например, форму регистрации, форму входа в систему, форму обратной связи и многие-многие другие HTML формы.

Собственно, форма состоит из различных элементов ввода: текстовых полей, текстовых областей, радио-кнопок, переключателей, кнопок и так далее.

И в этой статье Вы научитесь создавать абсолютно любые формы в HTML.

Сначала создайте простейшую HTML-страницу, в которую добавьте контейнер (тег <div>), выравнивающий своё содержимое по центру. Надеюсь, что Вы с этим без труда справитесь.

А теперь займёмся формой. Форма начинается с тега <form>, соответственно, заканчивается закрывающим тегом </form>. У этого тега есть несколько атрибутов, которые очень желательно заполнять. Но для начала давайте создадим простейшую форму с атрибутами тега <form>, чтобы Вам было понятнее назначение каждого из них:
<form name = "form1" action = "script/request.php" method = "post">
</form>

Здесь у нас начинается описание формы, у которой есть следующие атрибуты:

1) Атрибут "name". Значение этого атрибута означает имя HTML формы. Встаёт вопрос, зачем это надо? Ответ очень простой: если Вы будете использовать не одну форму, а несколько, то чтобы отличить одну форму от другой, необходимо задавать различные имена. А сами имена нужны для того, чтобы обращаться к формам, например, через JavaScript. Я Вам открою маленький секрет, который я Вам не советую использовать, но честности ради, скажу о нём. На самом-то деле, формы можно легко различать и без имён, поэтому, вообще говоря, имя формы совсем необязательно. Но я НАСТОЯТЕЛЬНО рекомендую давать формам имена, ведь Вам самим так будет проще понять, за что каждая из форм отвечает.

2) Атрибут "action". Значение этого атрибута отвечает за путь к файлу скрипта, который будет обрабатывать форму. То есть мало ввести данные в форму, их же ведь ещё нужно соответствующим образом обработать, и вот как раз путь к этому файлу-обработчику и находится в значении атрибута "action".

3) Атрибут "method". У него может быть одно из двух очень популярных значения: "post" и "get". Этот атрибут определяет способ отправки. Не буду вдаваться в подробности, просто скажу, что первый способ является скрытой отправкой данных, а второй открытой. Чтобы стало ещё понятнее, то давайте рассмотрим два адреса перехода:

а) http://mysite.ru/scipt/request.php

б) http://mysite.ru/script/request.php?a=7&b=Michael

В первом случае, пользователь не видит, что отправляет (метод "post"), а во втором он реально видит имена переменных и их значения (метод "get"). Вы, в конце статьи, можете попытаться отправить форму с помощью двух разных методов и убедиться в их различии. Но пока что скажу, что ГОРАЗДО чаще используют метод "post", то есть скрытую отправку.

Это было описание самой формы, а теперь же можно заняться добавлением элементов в форму.

Первое, что мы добавим - это текстовое поле. Добавляется текстовое поле с помощью тега <input>, а точнее с помощью атрибута этого тега "type" со значением "text". Также перед созданием текстового поля рекомендуется написать, что это за поле, например, "Ваше имя". Внутри тега <form> напишите такую строчку:
Ваше имя: <input type = "text" name = "firstname" value = "Тут Ваше имя">

Опять же, давайте разберём атрибуты:

1) Атрибут "type" отвечает за тип элемента ввода. В данном случае, мы указали, что это обычное текстовое поле. В следующих элементах мы будем менять значение этого атрибута.

2) Атрибут "name" отвечает за имя элемента. Здесь мы указали, что имя данного поля firstname.

3) Атрибут "value" отвечает за значение этого поля по умолчанию.

Как говорится, лучше один раз увидеть, чем сто раз услышать, поэтому лучше Вы наберите (причём, именно наберите, а не скопируйте!) этот текст в редакторе, а потом посмотрите результат в браузере.

Теперь создадим ещё одно похожее поле, но только не для ввода обычных символов, а для ввода пароля. То есть должно быть всё то же самое, но только текст должен быть скрыт за звёздочками. Поэтому, перейдя на следующую строку (тег <br>), напишем такой код:
Ваш пароль: <input type = "password" name = "pass" value = "Тут Ваш пароль">

Как видите, теперь значением атрибута "type" является "password". Остальные атрибуты те же, что и для обычного текстового поля.

Следующий элемент - это выпадающий список. Создаётся он чуть посложнее, так как тут необходимо не только объявить создание выпадающего списка, но ещё и добавить элементы в этот список. Напишем, перейдя на следующую строку (далее, упоминать об этом не буду) следующий HTML-код.
Выберите вариант:
<select name = "choice">
<option value = "1">Вариант 1
<option value = "2">Вариант 2
<option value = "3">Вариант 3
</select>

Тег <select> означает начало выпадающего списка. Заканчивается список тегом </select>. Атрибут "name" ясен, ибо уже объяснял его несколько раз. Элементы списка создаются с помощью тега <option>. Значение атрибута "value" означает, какой значение будет у переменной choice (например, в JavaScript), то есть либо choice = 1, либо choice = 2, либо choice = 3. Сразу после окончания описания тега <option> ставится то, что увидит пользователь в выпадающем списке. Опять же, лучше посмотрите в браузере, и Вам всё сразу станет понятно.

Теперь добавим текстовую область, используя тег <textarea>:
Напишите что-нибудь:
<br>
<textarea name = "message" rows = "10" cols = "15">Сообщение</textarea>

Здесь мы с Вами создаём текстовую область высотой в 10 строк (значение атрибута "rows") и шириной в 15 символов (значение атрибута "cols").

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

Следующий элемент - это радио-кнопка. Радио-кнопка - это набор таких "кружочков", из которых можно выбрать только один. Создаются радио-кнопки с помощью HTML-тега <input>, а, точнее, с помощью значения "radio" атрибута "type". Напишем такой HTML-код:
Выберите что-нибудь одно:
<input type = "radio" name = "choiceradio" value = "1">Вариант 1
<input type = "radio" name = "choiceradio" value = "2">Вариант 2
<input type = "radio" name = "choiceradio" value = "3">Вариант 3

Тут я остановлюсь на атрибуте "name", потому что помимо задания имени у него есть ещё одна очень важная особенность. Если Вы НЕ сделаете одинаковыми имена у этих трёх радио-кнопок, то они станут независимыми, а, следовательно, можно будет выбрать сразу несколько вариантов. Чтобы в этом убедиться, поменяйте имена, а потом попытайтесь выбрать сразу несколько вариантов, и Вы сразу убедитесь в моих словах. Поэтому одна группа радиокнопок должна иметь одно и то же значение атрибута "name". Атрибут "value" означает значение переменной "choiceradio" (опять же, например, в JavaScript). Сразу после описания тега <input> идёт текст, который увидит пользователь рядом с соответствующей радио-кнопкой.

Ещё одним элементом формы являются переключатели (checkbox). Создаются они опять же с помощью тега <input>. Напишем следующие строчки:
Вы согласны с нашими правилами:
<input type = "checkbox" name = "terms" value = "yes">

Я думаю, что здесь всё прозрачно, поэтому объяснять не буду. Советую лишь просто посмотреть, как это выглядит, в браузере. И скажу, что если флажок будет стоять, то значение переменной "terms" будет "yes", если не будет стоять, то значение этой переменной будет "", то есть пустой строкой.

Ещё одним элементом является поле для выбора файла. Наверняка, Вы когда-нибудь загружали файлы на сервер и Вам часто приходилось использовать для этого поле вставки имени файла. Вот такое поле создаётся с помощью уже надоевшего тега <input>. Напишем так:
Выберите файл для загрузки:
<input type = "file" name = "path">

Объяснять здесь особо нечего, единственное, что обязательно посмотрите, как это выглядит, чтобы у Вас не осталось вопросов.

Теперь займёмся двумя последними элементами - это кнопки. Их две: обычная кнопка и кнопка "submit". Начнём с обычной кнопки. Создаётся кнопка с помощью тега <input>. Например, так:
<input type = "button" name = "start" value = "Начать">

Значение атрибута "type" уже "button", что сообщает браузеру, что это кнопка. Атрибут "name" - это имя кнопки, а значение атрибута "value" отвечает за текст на кнопке. Обрабатывать эту кнопку мы не будем, так как мы проходим не JavaScript, а основы HTML, но в будущем обязательно это сделаем.

И последний элемент - это кнопка "submit", при нажатии на которую форма отправляется на обработку к файлу, указанному в атрибуте "action" тега <form>. Добавляется это кнопка так:
<input type = "submit" value = "Отправить">

Как видите, создать кнопку "submit" очень просто: для этого необходимо поставить значение "submit" атрибута "type" тега <input>. А атрибут "value" содержит текст, который пользователь увидит на кнопке.

Теперь, напоследок, советую посмотреть разницу между значениями "post" и "get" атрибута "method" тега <form>. Разницу можно увидеть в адресной строке при нажатии на кнопку "submit".

После того, как наиграетесь с формой, то результат должен быть таким:
<html>
<head>
</head>
<body>
<div align = "center">
<form name = "form1" action = "script/request.php" method = "get">
Ваше имя: <input type = "text" name = "firstname" value = "Тут Ваше имя">
<br>
Ваш пароль: <input type = "password" name = "pass" value = "Тут Ваш пароль">
<br>
Выберите вариант:
<select name = "choice">
<option value = "1">Вариант 1
<option value = "2">Вариант 2
<option value = "3">Вариант 3
</select>
<br>
Напишите что-нибудь:
<br>
<textarea name = "message" rows = "10" cols = "15">Сообщение</textarea>
<br>
Выберите что-нибудь одно:
<input type = "radio" name = "choiceradio" value = "1">Вариант 1
<input type = "radio" name = "choiceradio" value = "2">Вариант 2
<input type = "radio" name = "choiceradio" value = "3">Вариант 3
<br>
Вы согласны с нашими правилами:
<input type = "checkbox" name = "terms" value = "yes">
<br>
Выберите файл для загрузки:
<input type = "file" name = "path">
<br>
<input type = "button" name = "start" value = "Начать">
<br>
<input type = "submit" value = "Отправить">
</form>
</div>
</body>
</html>

Как видите, опять ничего сложного. Как видите, создать свой сайт - это совсем не сложно. Единственная проблема, как это всё запомнить? Ответ очень прост: практика, практика и ещё раз практика!


Источник: http://myrusakov.ru

Рекомендуем



Выравнивание элементов в HTML Другой способ выравнивания элементов HTML - это таблицы, но эта тема заслуживает отдельного разговора, поэтому поговорим о ней в одной из следующих статей


Создание таблиц в HTML Я думаю, что Вы обратили внимание на то, что в предыдущих статьях мы не занимались выравниванием, если, конечно, не считать выравнивание по левому краю, по центру и по правому краю браузера


Списки HTML В принципе, Вы уже можете создавать сайты на HTML, потому что элементарная база по HTML у Вас уже имеется, хотя, разумеется, изучать дальше необходимо, просто уже можно потихоньку начинать создавать сайт