Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Мова РНР.Питання до заліку.doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
2 Мб
Скачать
☆

Способы передачи параметров сценарию

Как Вы уже поняли, наиболее распространенными методами передачи данных между браузером и сценарием являются GET и POST. Однако вручную задавать строки параметров для сценариев и к тому же URL-кодировать их, согласитесь, довольно утомительно. Давайте посмотрим, что предлагает нам для облегчения жизни HTML.

Мы будем рассматривать метод GET для передачи запросов серверу.

Даже программисту утомительно набирать параметры в URL вручную. Различные ?, &, %... Представьте себе пользователя, которому необходимо это делать... К счастью, существуют удобные возможности языка HTML, которые, конечно, поддерживаются браузерами. Итак, пусть у нас на сервере в корневом каталоге размещен файл сценария script.php. Этот сценарий распознает 2 параметра: name и age. Где эти параметры задаются, мы пока не решили. При переходе по адресуhttp://www.somehost.com/script.php он должен отработать и вывести следующую HTML-страницу:

<html><body> Привет, name! Вам age лет! </body></html>

Разумеется, при генерации страницы нужно name и age заменить на соответствующие значения, переданные в параметрах.

Передача параметров через адресную строку браузера

Давайте попробуем включать параметры прямо в URL, в строку параметров. Таким образом, если запустить в браузере http://www.somehost.com/script.cgi?name=Vasya&age=20 мы получим страницу с нужным результатом:

<html><body> Привет, Vasya! Я знаю, Вам 20 лет! </body></html>

Обратите внимание, что мы разделяем параметры символом &, а также используем знак равенства =. Чуть нуже мы поясним, что это значит.

Использование HTML-форм

Как теперь нам сделать, чтобы пользователь мог в удобной форме ввести свое имя и возраст? Очевидно, нам необходимо интерактивное окно, в которое осуществляется ввод наших параметров, причем через браузер.

Итак, нам понадобится обычный HTML-документ (например, с именем form.html и расположенный в корневом каталоге) с элементами диалога — полями ввода текста и кнопкой, при нажатии на которую запустится скриптscript.php. Текст документа form.html:

<html><body> <form action="script.php"> Введите имя: <input type=text name="name"><br> Введите возраст: <input type=text name="age"><br> <input type=submit value="GO!"> </form> </body></html>

Загрузим наш документ в браузер. Теперь, если ввести в поле с именем свое имя, а в поле для возраста — свой возраст и нажать кнопку, браузер автоматически обратится к сценарию hello.php и передаст через ? все атрибуты, расположенные внутри тэгов <input> в форме и разделенные символом & в строке параметров. Заметьте, что в атрибуте action тэга <form> мы задали относительный путь, т. е. сценарий hello.php будет искаться браузером в том же самом каталоге, что и файл form.html.

Как мы знаем, все перекодирования и преобразования, которые нужны для URL-кодирования данных, осуществляются браузером автоматически.

Использование форм позволяет в принципе не нагружать пользователя такой информацией, как имя сценария, его параметры и т. д. Он всегда будет иметь дело только с полями, переключателями и кнопками формы.

Осталось теперь только определиться, как мы можем извлечь $name и $age из строки параметров и обработать их.

Далее мы рассмотрим, каким же образом PHP скрипт принимает параметры запроса и обрабатывает их.