Данный урок PHP посвящен организации интерактивных приложений в Web. Рассматривается задача обмена информацией между пользователем и веб-сервером. Методами GET и POST языка PHP данные из веб-браузера могут посылаться веб-серверу. Здесь рассмотрим метод GET.

На сайте можно разместить различные картинки, тексты и прочую информацию для посетителей. На сайте можно создать для пользователей возможность ввода той или иной информации посредством форм HTML и послать введенные данные на веб-сервер. Далее, на сервере обработать полученные данные и выдать соответствующий результат пользователю, что называют интерактивностью.

Например, если хотите провести опрос на сайте, то необходимо выполнить следующие действия:
- опубликовать вопросы опросника на веб-странице;
- создать для пользователя возможность ввода / выбора ответов на вопросы опросника;
- послать ответы на веб-сервер;
- на веб-сервере обработать принятые ответы;
- сообщить о результате обработки участнику опросника;

Мы создадим простенький опрос, используя возможности HTML и PHP, и рассмотрим способ обработки введенных пользователем данных.

Сохраните файл quiz.html со следующим кодом:

Файл quiz.html

<html> 
<body>
<h4>Наш опросник</h4>
<form>
Ваше имя? <input type="text" />
<p>Какой из этих городов Вам нравится больше?
<select>
<option>Москва</option>
<option>Париж</option>
<option>Токио</option>
<option>Стамбул</option>
<option>Берлин</option>
</select>
</form>
</body>
</html>

Вы можете открыть опросник в браузере, ввести свое имя, выбрать город. Но для обработки введенных вами данных нужно несколько усложнить код скрипта. Сравните внимательно, строчку за строчкой, нижеприведенный код с вышеприведенным:

Файл quiz.html

<html> 
<body>
<h4>Наш опросник</h4>
<form action="process.php" method="get">
Ваше имя? <input type="text" name="name" />
<p>Какой из этих городов Вам нравится больше?
<select name="city">
<option>Москва</option>
<option>Париж</option>
<option>Токио</option>
<option>Стамбул</option>
<option>Берлин</option>
</select>
<p><input type="submit" value="Отправить"/>
</form>
</body>
</html>

Измените код файла quiz.html и сохраните. Опросник готов.
Теперь перейдем к созданию скрипта, который обработает введенные данные.
Когда посетитель сайта наберет своё имя, выберет любимый город и нажмет кнопку «Отправить», скрипту process.php будет передан ассоциативный массив $_GET с элементами name и city. Элементы name и city содержат в себе имя пользователя и название города, соответственно.
Можно непосредственно пользоваться значениями элементов ассоциативного массива $_GET для обработки результатов опроса. Но лучше присвоить значения этих элементов другим переменным и пользоваться в скрипте PHP ими. Итак:

Файл process.php

<html> 
<body>
<?php
$name = $_GET['name'];
$city = $_GET['city'];
echo "Здравствуйте, $name!<br />";
echo "Вы любите ".$city;
?>
</body>
</html>

В этом примере переменной $name присвоено значение элемента $_GET['name'], а переменной $city - значение элемента $_GET['city'].

Вкратце повторим произведенные действия:
1. Создали файл quiz.html с полями для ввода имени пользователя и названия города.
2. Полям формы присвоили имена name и city.
3. В теге <FORM> указали, что введенные данные должны быть посланы скрипту process.php методом GET.
4. В скрипте process.php данные из ассоциативного массива $_GET присвоили переменным $name и $city.
5. Вывели полученные данные оператором echo.

Теперь Ваш черед проверить изложенный здесь материал на практике.

Примечание. Приведенные примеры являются учебными.

Контрольные вопросы и задания

  1. Проверьте работу скрипта process.php, изменив method="get" на method="post"?
  2. Проверьте работу формы quiz.html, добавив в список <select> еще несколько городов?
  3. Поищите в Интернете информацию о создании скрипта PHP, с помощью которого пользователь может отправлять на сервер файлы.