Автор статьи: Головин Андрей
В следующей таблице перечислены все возможные элементы ввода, которые используются в формах.
>
|
|
Теперь рассмотрим как значения и состояния этих элементов передаются в обработчик.
TEXT — здесь все просто. Введенное значение передается в виде: имя=значение (для удобства будем предполагать, что метод передачи значений установлен в GET). В обработчике значение можно получить из переменной $имя.
SELECT — значение берется из атрибута VALUE выбранного элемента
строка будет содержать mySelect=test1, в случае выбора первого элемента списка. Переменная в скрипте будет выглядеть так: $mySelect.
Элемент
В случае, если не заданы атрибуты VALUE, то передаваться будет то, что содержиться между тэгами .
RADIO — Здесь значение будет браться из атрибута VALUE, строка выглядит аналогично элементу типа TEXT. Доступ из скрипта, тоже аналогичен. Если вы забыли установить это значение, то будет передано значение on
CHECKBOX — если флажок установлен, то передается значение on, если флажок не установлен, то переменная не передается вобще. Таким образом, установку флажка в скрипте можно проверить, сравнив значение переменной $имя с «on». Переменная и строка выглядят аналогично элементу типа TEXT.
SUBMIT — кнопка SUBMIT, как ни странно, тоже может передавать значение в обработчик. Я не могу себе предствить зачем это нужно, но тем не менее. Значение устанавливается из атрибута VALUE. Все остальное аналогично полю типа TEXT.
IMAGE — Самый интересный элемент. В обработчик передаются два значения: имя.x и имя.y, которые представляют собой координату указателя мыши относительно верхнего левого угла изображения. Строка выглядит следующим образом: имя.x=значение&имя.y=значение. В скрипте устанавливаются переменные $имя_x и $имя_y.
При пересылке строковых значений они перекодируются специальным образом. Все символы, кроме алфавитно-цифровых и знака подчеркивания «_» заменяются знаком процента «%» и двумя шестнадцетиричными цифрами кода. Пробелы заменяются на знак «+». При установке переменных в скрипте производится обратное декодирование.
Еще одну интересную особенность предоставляет PHP. Мы можем каждому элементу присвоить имя переменной массива. Например:
В этом случае мы сможем получить доступ к значениям, обращаясь к элементам ассоциативного массива: $personal[«name»] и $personal[«email»].
Кроме того, если включена директива PHP , то, при передаче значений, будут заполнены массивы $HTTP_GET_VARS и $HTTP_POST_VARS, для соответствующих методов передачи переменных в обработчик.