
- •Лабораторная работа №5
- •5.4. Теоретические сведения
- •5.4.1. Общие сведения о формах
- •Элементы форм, ориентированные на ввод с клавиатуры
- •5.4.2.1. Текстовое поле
- •Текстовая область
- •5.4.3. Элементы форм, ориентированные на ввод с мыши
- •5.4.3.1. Флажок
- •5.4.3.2. Переключатель
- •5.4.3.3. Раскрывающийся список
- •5.4.4. Скрытые поля
- •5.4.5. Кнопки
- •5.4.5.1. Кнопка отправки данных
- •5.4.5.2. Кнопка сброса
- •5.4.6. Пример построения формы для сбора данных
- •5.5. Пример разработки программы на php с использованием форм
- •5.6. Указания по организации самостоятельной работы студентов
- •5.7. Контрольные вопросы
5.4.4. Скрытые поля
Скрытые поля не отображаются в браузере и обычно используются для передачи данных между сценариями. Хотя передача в скрытых полях работает вполне нормально, в РНР существует другое, более удобное средство — сеансовые переменные. Впрочем, скрытые поля также используются в некоторых ситуациях и потому заслуживают упоминания.
Синтаксис определения скрытого поля практически идентичен синтаксису текстовых полей, отличается только атрибут типа. Поскольку скрытые поля не отображаются в браузере, привести пример на страницах книги невозможно. Синтаксис определения скрытого поля:
<input type="hidden" name="имя_переменной" value="начальное_значение">
Определение скрытого поля включает три атрибута:
type — тип элемента (для скрытых полей — hidden);
name — имя переменной, в которой сохраняются скрытые данные;
value — значение, по умолчанию сохраняемое в скрытом поле.
Название этого элемента — скрытое поле — несколько неточно. Хотя скрытые поля не отображаются в браузерах, пользователь может просто выполнить команду View Source и увидеть, какие скрытые значения хранятся в форме.
5.4.5. Кнопки
5.4.5.1. Кнопка отправки данных
Кнопка отправки данных инициирует действие, заданное атрибутом action тега <form>. Синтаксис определения:
<input type="submit" value="текст_на_кнопке">
Определение кнопки включает два атрибута:
type — тип элемента (для кнопки отправки данных — submit);
value — текст, по умолчанию отображаемый на кнопке.
Рис. 6. Кнопка отправки данных
5.4.5.2. Кнопка сброса
Кнопка сброса отменяет все изменения, внесенные в элементы формы. Обычно никто ею не пользуется, однако кнопки сброса так часто встречаются на формах в Web, что я решил привести ее описание. Синтаксис определения:
<input type="reset" value=" текст _на_кнопке">
Определение кнопки включает два атрибута:
type — тип элемента (для кнопки сброса — reset);
value — текст, по умолчанию отображаемый на кнопке.
Кнопка сброса выглядит точно так же, как и кнопка отправки данных, если не считать того, что на ней обычно выводится слово «Reset» (рис. 6).
5.4.6. Пример построения формы для сбора данных
От описания базовых компонентов форм перейдем к практическому примеру — построению формы для обработки данных, введенных пользователем. Допустим, необходимо создать форму, в которой пользователь может высказать мнение о вашем Сайте. Пример такой формы приведен ниже.
// Пример формы для сбора данных
<form action = "process.php" method = "post">
<b>Please take a moment to tell us what you think about our site:</b><p>
<b>Name:</b><br>
<input type="text" name="name" size="15" maxlength="25" value=""><br>
<b>Email:</b><br>
<input type="text" name="email" size="15" maxlength="45" value=""><br>
<b>How frequently do you visit our site?:</b><br>
<select name="frequency">
<option value="">Site frequency:
<option value="0">This is my first time
<option value="l">< 1 time a month
<option value="2">Roughly once a month
<option value="3">Several times a week
<option value="4">Every day
<option va1ue-"5">I'm addicted
</select><br>
<b>I frequently purchase the following products from our site:</b><br>
<input type="checkbox" name="software" value="software">Software<br>
<input type="checkbox" name="cookware" value="cookware">Cookware<br>
<input type="checkbox" name="hats" value="hats">Chef's Hats<br>
<b>0ur site's greatest asset is:</b><br>
<input type="radio" name="asset" value="products">Product selection<br>
<input type="radio" name="asset" value="design">Cool design<br>
<input type="radio" name="asset" value="service">Customer Service<br>
<b>Comments:</b><br>
<textarea name="comments" rows="3" cols="40"></textarea><br>
<input type="submit" value="Submit!">
</form>
Внешний вид формы в браузере изображен на рис. 7.
Рис. 7. Форма для сбора данных