Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Однострочные поля ввода






Формат тега INPUT для создания поля ввода текстовой строки:

< input type=text

name=имя_параметра

[value=значение]

[size=paзмep]

[maxlen=длина] >

Данный тег создает поле ввода с максимально допустимой длиной текста maxlen и размером в size знакомест. Если задан атрибут value, то в поле будет изначально отображаться указанная строка.

1.11.2 Поле ввода пароля

Формат тега INPUT для создания поля ввода пароля:

< input type=password

name=имя_параметра

[value =значение]

[size=paзмep]

[maxlen=длина] >

Принцип работы данного тега точно такой же, как и текстового. Разница заключается в том, что вводимая информация в поле не отображается, а заменяется «звездочками».

1.11.3 Скрытое текстовое поле

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

< input type=hidden

name=имя

value=значение >

Такие поля передаются серверу, но на Web-странице не отображаются.

1.11.4 Независимые переключатели

Очень часто пользователю, заполняющему форму у себя в браузере, необходимо дать возможность указать свои настройки с помощью выбора определенных значений. Реализовать это можно также с помощью тега INPUT. Для этого необходимо в качестве значения атрибута type указать checkbox:

< input type=checkbox

name=имя

value=значение

[checked] >

Если переключатель был включен на момент нажатия кнопки отправки данных, то сценарию будет передан параметр имя=значение. Переключатель может быть по умолчанию либо включен, либо выключен. Чтобы переключатель был по умолчанию включен, необходимо для него указать атрибут checked. Переключатель checkbox называется независимым, так как его состояние не зависит от состояния других переключателей checkbox. Таким образом, в одной форме может быть одновременно выбрано несколько переключателей.

1.11.5 Зависимые переключатели

Переключатель radio является зависимым переключателем, поскольку на форме может быть только один включенный переключатель типа radio. В качестве имени переключателей воспринимается значение атрибута name. Может быть только один активный переключатель.

< input type= radio

name=имя

value=значение

[checked] >

1.11.6 Кнопка отправки формы

Последними элементами управления типа INPUT являются кнопки. Кнопка отправки служит для отправки сценарию введенных в форму значений. Синтаксис тега INPUT при этом таков:

< input type=submit

[name=go]

value=Передать >

Атрибут value определяет текст, который будет написан на кнопке отправки. Атрибут name определяет имя кнопки и является необязательным. Если значение этого атрибута не указывать, то скрипту будут переданы введенные в форму значения и все. Если же атрибут name для кнопки будет указан, то дополнительно к данным формы будет отправлена пара имя=значение от самой кнопки.

1.11.7 Кнопка сброса

Кроме кнопки submit есть еще кнопка reset, которая сбрасывает форму — устанавливает для всех элементов формы значения по умолчанию. Желательно, чтобы на вашей форме была такая кнопка, особенно, если это большая форма. Наличие данной кнопки облегчает очистку формы, если были введены неправильные параметры.

< input type=reset

value = Cбpoc >

1.11.8 Кнопка отправки с индивидуальным рисунком

Вместо кнопки submit можно использовать рисунок для отправки данных. При щелчке на этом рисунке произойдет то же, что и при нажатии на кнопку submit. Однако, кроме этого, сценарию будут переданы координаты места произведения щелчка на рисунке. Координаты будут переданы в формате: имя.х=коор_Х, имя.у=коор_У.

< input type=image

name=имя

scr=рисунок >

1.11.9 Загрузка файлов

Тег INPUT позволяет реализовывать еще одну возможность в формах. Он позволяет создавать поле выбора файла для отправки. При этом формат тега таков:

< input type=file

name=имя

[value=имя файла] >

1.12 Ввод многострочного текста. Тег TEXTAREA

В HTML эта возможность реализуется с помощью тега TEXTAREA. Поле, создаваемое этим тегом, позволяет вводить и отправлять не одну строку, а сразу несколько. Формат тега TEXTAREA таков:

< textarea

name=имя

[соls = ширина в символах]

[rows = высота в символах]

wrap=тип_nepeнoca

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

< /textarea>

Необязательные параметры cols и rows желательно указывать. Первый из них задает количество символов в строке, а второй — количество строк в области. Атрибут wrap определяет, как будет выглядеть текст в поле ввода:

♦ Virtual — справа от текстового поля выводится полоска прокрутки. Вводимый пользователем текст выглядит разбитым на строки, а символ новой строки вставляется при нажатии клавиши Enter.

♦ Physical — этот тип зависит от браузера и в разных браузерах может вести себя по-разному.

♦ None — текст выглядит в поле в том виде, в котором пользователь его вводит. Если текст не умещается в одну строку, появляется горизонтальная полоска прокрутки.

1.13 Списки выбора. Тег SELECT

1.13.1 Списки с единственным выбором

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

< select name=" variants" >

< option value=" 1" > Вариант1< /option>

< option value=" 2" > Вариант 2< /option>

< option value=" etc" > и т.д.< /option>

< /select>

Варианты выбора задаются с помощью тегов option. При отправке формы сценарию будет отослано значение value выбранного элемента списка.

Если атрибут size равен 1, то список будет выпадающим. В противном случае список будет занимать n строк и будет «оснащен» полосoй прокрутки. Значение, выбранное в списке по умолчанию, можно указать с помощью атрибута selected для соответствующего тега option. Атрибут value является необязательным. Если его не указать, то будет передана строка, заключенная в тег option.

1.13.2 Списки множественного выбора

С помощью тега SELECT можно создавать и списки множественного выбора. В таких списках можно выбрать не одно, а сразу несколько значений. Чтобы сделать список с множественным выбором, необходимо для тега SELECT указать атрибут multiple. Если пользователь выберет несколько вариантов, то сценарию будут переданы параметры в форме:

имя=значение& имя=значение...& имя=значение

1.14 Обработка запросов с помощью РНР

Внутри PHP-скрипта существует несколько способов получения доступа к данным, переданным клиентом по протоколу http. До версии РНР 4.1.0 доступ к таким данным осуществлялся по именам переданных переменных. Таким образом, если, например, было передано first_name=Nina, то внутри скрипта появлялась переменная $first_name со значением Nina. Если требовалось различать, каким методом были переданы данные, то использовались ассоциативные массивы $HTTP_POST_VARS и $HTTP_GET_VARS, ключами которых являлись имена переданных переменных, а значениями — соответственно значения этих переменных. Таким образом, если пара first_name=Nina передана методом GET, то $HTTP_GET_VARS [" first_name" ] =" Nina".

Использовать в программе имена переданных переменных напрямую небезопасно. Поэтому было решено начиная с РНР 4.1.0 задействовать для обращения к переменным, переданным с помощью HTTP-запросов, специальный массив - $_REQUEST. Этот массив содержит данные, переданные методами POST и GET, а также с помощью HTTP cookies. Это суперглобальный ассоциативный массив, т.е. его значения можно получить в любом месте программы, используя в качестве ключа имя соответствующей переменной (элемента формы).

Допустим, мы создали форму для регистрации участников заочной школы программирования. Тогда в файле 1.php, обрабатывающем эту форму, можно написать следующее:

<?

$str=" Здравствуйте, $_REQUEST[first_name].$_REQUEST[last_name]! < br> ";

$str. = " Вы выбрали для изучения курс по $_REQUEST[kurs]”;

echo $str;

? >

Тогда, если в форму мы ввели имя «Вася», фамилию «Петров» и выбрали среди всех курсов курс по РНР, на экране браузера получим такое сообщение:

Здравствуйте, Вася Петров!

Вы выбрали для изучения курс по РНР

После введения массива $_REQUEST массивы $HTTP_POST_VARS и $HTTP_GET_VARS для однородности были переименованы в $_POST и $_GET соответственно, но сами они из обихода не исчезли из соображений совместимости с предыдущими версиями РНР. В отличие от своих предшественников, массивы $_POST и $_GET стали суперглобальными.

Приведем пример использования этих массивов. Допустим, нам нужно обработать форму, содержащую элементы ввода с именами first_name, last_name, kurs (например, форму form.html, приведенную выше). Данные были переданы методом POST, и данные, переданные другими методами, мы обрабатывать не хотим. Это можно сделать следующим образом:

<? php

$str = " Здравствуйте, ".$_POST[" first_name" ]." ".$_POST[" last_name" ]."! < br> ";

$str.= " Вы выбрали для изучения курс по ". $_POST[" kurs" ];

echo $str;

? >






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.