Вы здесь

Формы

Формы можно использовать для отсылки данных через Интернет и часто используются для организации обратной связи с пользователями.

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

Основные теги, используемые для создания HTML форм, - это тег form, тег input, тег textarea, тег select и тег option.

Тег form создает форму. Он требует наличия одного обязательного атрибута – action. В этом атрибуте указывается адрес, по которому форма будет отсылать свои данные после того, как пользователь отдаст команду "отправить".

Необязательный атрибут method указывает на то, каким образом должны отсылаться данные формы. Он может принимать два значения – get (значение по умолчанию) и post. При последнем значении данные во время отсылки скрываются (при значении get данные формы прикрепляются к URL).

Таким образом, элемент формы будет иметь приблизительно следующий вид:

<form action="http://msiter.ru/processingscript.php" method="post">
   ...
</form>

Тег input – это основа всего мира форм. Он может быть десяти видов:

Обратите внимание, что тег input закрывает сам себя при помощи конструкции "/>".

Тег textarea – создает многострочную область ввода текста. Он требует использование атрибутов rows и cols, которые задают размер области ввода:


<textarea rows="5" cols="20">Здесь вводят много текстовой информации</textarea>

Тег select и тег option используются для создания разворачивающего или выпадающего меню. Они работают следующим образом:

<select>
  <option value="first option">Опция 1</option>
  <option value="second option">Опция 2</option>
  <option value="third option">Опция 3</option>
</select>

При отправке данных формы посылается выбранный элемент списка.

Аналогично атрибуту checked в флажках и переключателях тег option может иметь атрибут selected:


<option value="mouse" selected="selected">Грызун</option>

Все упомянутые выше теги будут корректно отображаться на веб-странице, однако если попытаться обработать соответствующей программой, то ничего не получится. Это произойдет, потому что всем полям формы необходимо присвоить имена. Имена присваиваются при помощи атрибута name, который необходимо добавить каждому полю формы. Например,


<input type="text" name="talkingsponge" />

Форма может иметь, например, следующий вид. (Внимание: форма не будет работать до тех пор, пока не будет реализован скрипт "contactus.php", указанный в атрибуте action тега form, и который обрабатывает передаваемые данные.)

<form action="http://msiter.ru/contactus.php" method="post">
   <p>Имя:</p>
   <p><input type="text" name="name" value="Ваше имя" /></p>
   <p>Комментарий: </p>
   <p><textarea name="comments" rows="5" cols="20">Ваш комментарий</textarea></p>
   <p>Вы:</p>
   <p><input type="radio" name="areyou" value="male" /> Мужчина</p>
   <p><input type="radio" name="areyou" value="female" /> Женщина</p>
   <p><input type="radio" name="areyou" value="hermaphrodite" /> Ни то ни другое</p>
   <p><input type="submit" /></p>
   <p><input type="reset" /></p>
</form>

Если у вас возникнет желание узнать, как создавать формы с более широкими возможностями, то обратитесь к учебнику "HTML продвинутого уровня". Для того чтобы разобраться в том, как добавлять скрипты Javascript, то смотрите учебник "HTML среднего уровня".