Передача переменных в скрипт.
Передача переменных в скрипт.
Чаще всего серверные скрипты используются для обработки результатов
заполнения форм. Например, в гостевой книге пользователь вводит данные
в форму, которая затем обрабатывается на сервере. Отвечая на какой-либо
опрос пользователь, аналогично, устанавливает значение определенных
полей формы.
Напомню, какие тэги и атрибуты должна содержать форма:
<FORM NAME="имя_формы"
ACTION="путь_к_обработчику"
METHOD="метод_передачи_переменных">
поля ввода...
</FORM>
Цветом выделены те элементы, которые пригодятся нам в этом опыте. Прежде
всего разберемся, что такое "обработчик". Это скрипт на сервере, в который
будут переданы значения полей ввода.
Каждое поле ввода имеет атрибут NAME, которое
будет передано в обработчик вместе со своим значением. Существует два
метода передачи данных: GET и POST.
Их отличие состоит в том, что при использовании метода GET
значения полей присоединяются к URL, указанному в атрибуте ACTION.
Происходит это таким образом:
htp://site.domain/act.php3?имя=значение&...имя=значение
Пары "имя=значение" создаются для каждого элемента ввода, для которого
указано имя атрибутом NAME.
В случае использования метода POST значения
полей передаются в заголовке запроса к серверу. Формат передачи при этом
методе нам, вобщем-то, не интересен. Просто примем к сведению, что значения
передаются "незаметно" для обычного пользователя.
Теперь приступим непосредственно к рассмотрению темы опыта. При исполнении
скрипта на языке PHP (напомню, что я рассматриваю именно этот язык так
как он мне наиболее симпатичен) создаются переменные с именами, соответствующими
именам полей и содержащие соответствующие значения.
Предположим, что мы создали форму следующего вида:
<FORM ACTION="mult.php3" METHOD="GET">
<INPUT TYPE="text" NAME="first" SIZE="4" MAXLENGTH="4">
<INPUT TYPE="text" NAME="second" SIZE="4" MAXLENGTH="4">
<INPUT TYPE="Submit" VALUE="Умножить">
</FORM>
Скрипт, содержащийся в файле mult.php3 может выглядеть следующим образом:
<?php
Header("Content-type: text/html");
echo "$first умножить на $second получится ", $first*$second;
?>
Как видим, все довольно просто. Результат работы такой формы можно увидеть,
заполнив поля в форме справа.
Необходимо напомнить, что существует специальный тип поля HIDDEN.
Это поле, которое не выводится на экран, но, если ему присвоено имя атрибутом
NAME, значение его передается в форму. Это бывает
полезно, например, когда один обработчик может производить не одно, а
несколько действий. С помощью такого поля мы мы можем задать тип действия,
которое мы хотим произвести с данными формы.
На сегодня все. В следующий раз рассмотрим как передаются значения различных
элементов, которые используются в формах.
©
Андрей Головин //exper.ural.ru/
|