На WEB-страничке могут располагаться разные знакомые любому пользователю Windows элементы - радиокнопки, поля для ввода информации (textbox'ы), флажки combobox'ы и др. На этом уроке мы и посмотрим, как это делается.
Начнем с textbox'ов. Для его размещения на WEB-страничке вы должны написать приблизительно слудующий код:
А вот так этот textbox будет на нашей WEB-страничке выглядеть:
В него мы уже можем впечатывать некоторые данные.
Обратите внимание на следующие момент. Все теги для разных элементов пользовательского ввода типа радиокнопок или флажков располагаются между тегами <form> и </form>. Это так называемые формы. Вне формы располагать элементы пользовательского интерфейса не следует. О параметрах тега <form> пока мы говорить не будем. Это мы обсудим в одном из следующих уроков. Пока же запомните, что все элементы для ввода пользователем некоторой информации располагаются между тегами <form> и </form>.
Что еще можно расположить на WEB-страничке? Радиокнопки, флажки и списки и combobox'ы. Например, так можно разместить на форме флажок:
<form action="/cgi-bin/script.pl" method="post">
<input type="Checkbox" name="option1" checked> Отправлять ответы на e-mail<br>
<input type="Checkbox" name="option2"> Подписать на новости сайта<br>
</form>
А вот результат:
Обратите внимание, как ставить или убирать галочку. За это отвечает параметр checked.
Но самый важный элемент, без которого введенные пользователем данные не отправятся на сервер - это кнопка submit. Не путайте кнопку Submit c обычной кнопкой (о которой мы поговорим отдельно на одном из последующих уроков) - это разные вещи. Просто кнопка никаких данных на сервер не отправляет. Кнопку submit вы можете добавить так:
Теперь, если вы нажмете на кнопку типа submit, то введенные вами для данной формы данные в textbox'ы, флажки и т. п. передадуться на сервер. А как - об этом следующий урок.
На прошлом занятии мы с вами посмотрели, какие элементы могут располагаться на форме. Так же мы обсудили кнопочку submit для отправки данных. Сейчас мы посмотрим, где же наша форма передает введенные пользователем для сервера данные.
Создайте обычную заготовку для HTML-станички и добавьте в нее следующую форму:
Теперь запустите созданную WEB-страничку в браузере. В появившейся на страничке форме задайте что-нибудь в поле с надписьм Name (мы в нашем примере ввели туда Igor). Оставьте галочку рядом с надписью "Присылать ответы на e-mail". Теперь нажмите на кнопку "Отправить".
Заметьте, что в строке браузера после имени скрипта, который будет обработывать введенные значения (его сейчас нет, но это в настоящее время не имеет значения) появились передаваемые нами параметры:
Параметры в строке передаются так - после имени скрипта идет вопростительный знак (?), после которого идут все параметры в формате "параметр=значение". Имя первого нашего параметра - firstname, и второго - option1 (это видно по тексту вставленной формы). Если параметров несколько, то между ними ставится знак амперсанда (&). Таким образом при методе передачи get данные передаются прямо в адресной строке браузера открытым текстом. В частности это означает, что вы можете передавать данные скрипту вообще без всяких форм - достаточно нужную строчку самому набрать в адресной строке браузера.
Метод post, использованный на прошлом занятии, передает данные не через адресную строку. Но все равно при передаче на сервер данные никак не шифруются и передаются "открытым текстом".
Кстати, раз форма передает данные "открытым текстом", то ни о какой серьезной безопасности речь идти не может. Если получить физический доступ к сети и воспользоваться каким-нибудь сниффером (программой для перехвата сетевых пакетов), то путем несложного анализа можно вычленить передаваемые данные (в том числе пароли и что-нибудь типа номера кредитой карточки ;().