| Внешние переменные (переменные вне PHP) |
|
|
|
Внешние переменные (переменные вне PHP)Web-программирование в большей части представляет собой как раз обработку различных данных, введенных пользователем — т. е., обработку HTML-форм. Здесь мы не будем подробно останавливаться на механизе работы протокола HTTP, который отвечает за доставку данных из браузера на сервер и обратно, этому посвящен специальный раздел PHP и HTTP. Там же глубоко рассмотрены принципы работы с HTML-формами. Сейчас мы рассмотрим эти механизмы лишь с прикладных позиций, не углубляясь в теорию. Для того, чтобы принимать данные от пользователей, нам необходимо интерактивное взаимодействие с ними. А теперь попробуем написать сценарий, который принимает в параметрах имя пользователя и выводит: "Привет, <имя>!". Сначала рассмотрим наиболее простой способ передачи имени сценарию — непосредственный набор его в URL после знака ? — например, в формате name=имя. Вот пример: http://localhost/script.php?name=имя Наш сценарий должен распознать параметр name. То есть, говоря проще, сценарий (скрипт) должен принять параметр name в виде переменной name, а затем вывести в браузер пользоватея строку "Привет, <имя>!". Сделать это можно таким образом: Пишем скрипт, принимающий параметр name и выводящий результат в браузер пользователя, а затем сохраняем его под именем script.php: <?php В нашем примере мы использовали предопределенную переменную $_GET['name'], чтобы "принять" параметр name. Теперь, передав через GET-запрос параметр name=Саша, мы получим следующий результат: Привет, Саша ! А теперь попробуем передать параметр name не из строки запроса браузера, а через HTML-форму. Создаем HTML-документ следующего содержания: <form action="http://localhost/script.php" method="GET"> Теперь сохраним данный HTML-документ на нашем тестовом сервере (localhost) под именем send.html в той же директории, где у нас уже сохранен сценарий script.php. Теперь запускаем HTML-документ в браузере: http://localhost/send.html Вводим имя в поле и нажимаем кнопку "GO!". Форма передаст через GET-запрос параметр name нашему скрипту script.php. Если вы все сделали правильно и ваш web-сервер работает нормально, вы увидете введенное вами в поле формы имя! В адресной строке браузера вы увидете путь и переданный вами параметр name. Теперь мы должны понять, как мы можем передать множество параметров, для начала хотя-бы два. Итак, нам нужно, чтобы скрипт выводил следующее: "Привет, <имя>! Вам <возраст> лет!". То есть нам нужно передать в скрипт 2 параметра: name и age. Теперь мы напишем скрипт script.php, принимающий два параметра: name и age, а также HTML-документ с формой, которая эти два параметра будет передавать в наш новый скрипт: <?php А вот и HTML-документ send.html, с помощью которого мы параметры name и age передадим нашему скрипту: <html><body> Теперь наш скрипт принимает два параметра name и age и выводит в браузер результат формата: "Привет, <имя>! Вам <возраст> лет!". Обратите внимание на адресную строку браузера после передачи параметров сценарию, она будет выглядить примерно следующим образом (без URL-кодирования кириллицы): http://localhost/script.php?name=Саша&age=23 В зависимости от установок вашего интерпретатора, существует несколько способов доступа к данным из ваших HTML-форм. Вот несколько примеров: <?php По материалам сайта: http://www.php.su/
|



