Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МУ1_och_new.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
3.15 Mб
Скачать

3.4. Лабораторная работа №3. Взаимодействие с пользователем на стороне клиента

Введение

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

Для доступа к Web - страницам используются специальные клиентские программы - обозреватели (браузеры), находящиеся на компьютерах пользователей Интернета. Обозреватель формирует запрос на получение требуемой страницы или другого ресурса с помощью специального URL - адреса. В задачу обозревателя входит отображение Web - страниц, которые формирует Web - сервер. При этом обозреватель устанавливает соединение с требуемым Web - узлом, используя протокол передачи данных HTTP.

Для расширения возможностей клиентской части (обозревателя) и серверной части создаются программы расширения обозревателя и сервера. Схема взаимодействия обозревателя и сервера с использованием программ расширения приведена на рисунке 1.

Компьютер - пользователя Сервер

Рис.1. Схема взаимодействия обозревателя и сервера.

Для организации такого взаимодействия могут использоваться следующие средства:

  • сценарии, подготовленные на различных языках сценариев (JavaScript, VBScript) и вставляемые в обычный Web - документ;

  • аплеты и сервлеты Java;

  • элементы управления ActiveX;

  • программы, реализованные с использованием интерфейса CGI;

  • динамические библиотеки, реализованные с использованием интерфейса ISAPI;

  • динамические страницы IDC/HTX, ASP, PHP.

1.Взаимодействие с пользователем на стороне клиента

Целью данного задания является ознакомление с существующими Internet технологиями, предоставляющими следующие возможности:

  • разработка и использование в HTML-документах пользовательских форм;

  • расширение клиентского программного обеспечения средствами предварительной обработки пользовательских форм.

2. Создание и использование пользовательских форм

Формы HTML являются основным средством организации интерактив­ного взаимодействия в Интернете. Практически не всех сайтах, куда бы Вы не зашли, Вы встретите формы, которые предлагается заполнить. Они служат для пересылки данных от пользователя к Web-серверу. С помощью элементов HTML-документа можно создавать простые формы, предполага­ющие ответы типа "да" и "нет", а также разрабатывать сложные формы для заказов или для того, чтобы получить от пользователей какие-либо коммен­тарии и пожелания и т. д.

В HTML-документе формы задаются с помощью контейнерного тега <form> и состоят из нескольких полей ввода, которые обозреватель отображает в виде графических элементов управления: кнопок выбора, переключателей, строк ввода текста, управляющих кнопок и т. д. Для создания полей ввода предназначены теги <input>, <select>, <textarea>, которые задаются внутри тега <form>.

Тег <form> в общем виде записывается в следующем формате:

<form action="url" метноd=”метод_передачи”

name=”имя_формы”, onsubmit="имя_программы" >

содержимое формы (теги – дескрипторы)

</form>

Параметр action является обязательным. В качестве его значения зада­ется адрес URL программы, которая будет обрабатывать извлеченную из фор­мы информацию.

Параметр method определяет метод пересылки данных формы от обо­зревателя к Web-серверу и может принимать значение get или post. Метод get более прост, но имеет ряд ограничений, поэтому мы далее будем использовать более универсальный метод post.

Параметр name задает имя формы.

Параметр onsubmit определяет программу, написанную на языках JavaScript или VBScript, которая выполняется до отправки данных формы на сервер. Используется обычно для проверки правильности заполнения клиентом формы.

Теги – дескрипторы

Рассмотрим использование тегов-дескрипторов <textarea>, <select> и <input>, применяемых в HTML для создания интерфейсных объектов внутри формы.

Теги-дескрипторы имеют следующее назначение:

• <textarea> позволяет вводить многострочную текстовую информацию;

• <select > используется для выбора нужной строки в окне с полосой прокрутки либо в раскрывающемся меню;

• <input> является многоцелевым тегом и позволяет вводить текстовую информацию в виде строки, создавать интерфейсные объекты в виде кно­пок по установке и сбросу флагов (checkboxes) и переключателей (radiobuttons), обычные кнопки и другие объекты.

Teг<textarea>

Teг <textarea> является контейнерным и используется для создания внутри формы поля ввода многострочного текста. Это поле может отобража­ться в виде ограниченной прямоугольной области с горизонтальной и верти­кальной полосами прокрутки. Teг имеет следующий формат:

<textarea name=”имя” rows=”число” cols= “число” >

Текст по умолчанию

</textarea>

Атрибуты rows и cols определяют число строк и число столбцов видимого текста соответственно. Между открывающим и закрывающим тегами может быть помещен текст, отображаемый в поле ввода по умолчанию.

Teг <select>

Teг <select> является контейнерным и позволяет организовать внутри формы выбор одного или нескольких значений (параметров) из списка значений.

Ter <select> записывается в следующем формате:

<select name=”имя_поля” size=число multiple>

Элементы меню или списка

</select>

Здесь: параметр size определяет количество видимых элементов выбора, при size=1 используется раскрывающееся меню, при size =”число” боль­шем 1 используется список прокрутки, для которого "число" определяет ко­личество видимых элементов; задание параметра multiple позволяет вы­полнять выбор из меню или списка одновременно несколько элементов.

Элементы меню в теге <select> задаются с помощью тега <option>, записываемого в следующем формате:

<option selected value=”значение”> Tекст

<option> Tекст

<option> Tекст

Атрибут selected задает выбор элемента по умолчанию. Параметр value содержит значение, пересылаемое серверу, если данный элемент выбран в меню или списке. Текст, находящийся в конце тега, выводится на экран обо­зревателя на месте элемента в списке.

Teг<input>

Тег <input> предназначен для создания внутри формы различных кнопок, полей для ввода текста, пароля, имен файлов. Тег имеет следующий формат:

<input tyре=”тип_поля_ввода” name=”имя_поля_ввода” дополнительные_параметры>

Первые два параметра являются обязательными. Параметр type опреде­ляет тип поля ввода: кнопка выбора, кнопка передачи и др. Параметр name задает имя поля, которое используется как идентификатор передаваемого Web-серверу значения. Состав дополнительных параметров зависит от зна­чения параметра type, определяющего тип поля.

Атрибут type тега <input> может принимать следующие значения:

• text — является значением по умолчанию. В этом случае создается ин­терфейсный элемент в виде одной строки для ввода данных. Дополнительные параметры: value=значение, отображаемое в поле по умолчанию; size=n, где n - максимальное количество отображаемых символов;

• password — аналогичен предыдущему типу, но заменяет вводимые символы пароля звездочками;

• checkbox — выводит поле для установки или сброса флажка. В этом поле может использоваться атрибут checked, который определяет установленный по умолчанию флаг, а также атрибут value, определяющий строку, которая будет передана серверу, если элемент будет выбран ;

• radio — аналогичен предыдущему типу поля, но имеет отличный внеш­ний вид (аналогичный интерфейсному виду Radio-кнопки — графиче­скому элементу операционной системы Windows) и не позволяет отме­нять сделанный выбор. Эти элементы используются группой, из которых может быть выбран только один. Все элементы группы должны иметь общее имя (name);

• reset — позволяет создать кнопку для обновления формы. Атрибут value позволяет задать надпись на кнопке;

• submit — используется для создания кнопки, по нажатию которой введен­ные данные отправляются на сервер для обработки программой-сценарием.

Атрибут name у всех типов используется для получения доступа к заданному элементу HTML-доку­мента.

Рассмотрим пример создания формы:

<form>

Введите ваше имя:

<input type="text" name="My" value="Имя" size="10" maxlength="20"><br>

Введите пароль:

<input type="password" name="pass1" Size="30" maxlength="30"><BR>

Выберите тип действия: <br>

<input type="checkbox" name="mycheckboxl" value="Параметр1" checked> Действие 1

<input type="checkbox" name="mycheckbox2" value="Параметр2"> Действие 2 <br>

<input type="radio" name="my1" value=" Параметр2"> Действие 3

<input type="radio" name="my1" value =" Параметр3"> Действие 4 <br>

<textarea name="My_textarea " rows="4" cols="40">

Справочный текст, внутри которого <br>

можно ввести собственные данные <br>

Эта форма посылает данные серверу

</textarea> <br>

<select name="menu">

<option selected value ="Действие1"> Действие1

<option value=" Действие2"> Действие2

<option value=" Действие3"> Действие3

</select>

<input type="reset" value="Reset ">

<input type="submit" value ="Послать данные!">

</form>

Сформируйте HTML – документ (см. задание 1), включите в него текст примера формы и посмотрите результат в обозревателе (Рис.2).

Рис.2. Окно обозревателя с текстом примера.