PHP 5 для начинающих |
Страница 79 из 813 Указанный код создает простую форму с двумя полями (имя пользователя и пароль) и кнопкой отправки данных. При нажатии этой кнопки содержимое формы отправляется серверуwww.example.com. Каким образом можно заставить HTML-формы и PHP работать сообща для создания динамически генерируемых Web-страниц (а не просто копировать страницы в браузер с Web-сервера)? Прежде всего, с помощью HTML-тегов в виде простого текста необходимо создать Web-страницу и включить в нее HTML-форму. Затем в данную страницу следует ввести PHP-код и убедиться, что он соответствующим образом ограничен разделителями <?php и ?>. Когда браузер запрашивает Web-страницу, любой PHP-код в ней преобразовывается или обрабатывается PHP-интерпретатором, прежде чем результаты будут возвращены пользователю, а результаты PHP-обработки подставляются в те места Web-страницы, где был расположен исходный PHP-код. Можно также написать код, который будет обрабатываться, только если на форме нажата кнопка отправки данных (как написать такой код, показано в нескольких последующих разделах). Этот код может даже использовать в своей работе некоторые из переданных посредством формы данных. Окончательный результат PHP-обработки является HTML-кодом, но поскольку PHP-интерпретатор перед отправкой окончательной версии Web-страницы имеет возможность выполнить какую-либо обработку, некоторое содержимое страницы (любые фрагменты, сгенерированные PHP-кодом) может отличаться при каждом новом запросе этой страницы. А если обработка выполняется в ответ на передачу данных формы, то появляется возможность создавать множество различных интерактивных функций. Итак, вы уже знаете, как работает протокол HTTP и как происходит взаимодействие клиентов и серверов, поэтому понимание процесса взаимодействия между пользовательским браузером (клиентским приложением) и Web-сервером (серверным приложением) во время работы PHP-программ в сети не должно вызвать у вас трудностей. В данной главе рассматриваются HTML-формы и то, как они способствуют взаимодействию пользователя с Web-сервером (и, следовательно, с PHP-программами). Эти темы заслуживают пристального внимания, поскольку HTTP, HTML и PHP тесно связаны друг с другом. Понимание происходящего между браузером и сервером очень важно для PHP-программиста, так как внутри запросов и ответов, передаваемых от клиента к серверу и обратно, находятся полезные данные, которые можно использовать. Каждый раз, когда пользователь нажимает на ссылку или кнопку отправки в форме, браузер отправляет Web-серверу множество информации о самом себе и операционной системе на компьютере пользователя. Аналогично во время ответа Web-сервер отправляет множество данных о самом себе. В PHP имеются возможности получения данных, которые передаются браузером, а также способы открытия данных о PHP-инсталляции на сервере. Например, когда пользователь направляется на какой-либо Web-сайт на основе PHP и регистрируется на нем, вероятнее всего, на сервере заполняется предопределенная переменная $_POST (в нее, в частности, попадает имя пользователя и пароль), а также предопределенная переменная $_SERVER, в которой содержится информация о текущей серверной среде. Обе эти переменные доступны PHP-приложению, работающему на сайте. Эти аспекты PHP более подробно обсуждаются в нескольких последующих разделах. Количество доступных данных действительно удивительно (особенно учитывая то, что большинство начинающих разработчиков даже не подозревают о них). Далее описано, как получить доступ к этим данным. |