Учебное пособие: Этапы создания веб-приложения. Основы РНР и MySQL
Такую схему работы называют "клиент-сервер". Клиент в данном случае - браузер.
Соединение с web-сервером длится промежуток времени между щелчком по ссылке (или другим способом запроса) и началом отображения web -страницы. Большинство браузеров во время соединения отображают индикатор, например, индикатор MS Internet Explorer отображает анимацию в правом верхнем углу.
Внимательный студент может заметить - а как же так, я уже читаю страницу, а индикатор все еще показывает процесс соединения? Дело в том, что тэг <img src=...> (загрузка изображения) и некоторые другие теги HTML – кода - это еще один запрос к серверу. Выполняется он точно так же, как и любой другой запрос - по той же схеме.
Чтобы навсегда избавиться от восприятия HTTP как "черного ящика", "притворимся" браузером с помощью telnet' а:
1. Запустим telnet www.php5.ru 80
2. Введем в окне терминала следующее (если ввод не отображается - ничего страшного):
GET / HTTP/1.0 [ здесь нажмем Enter]
Host: www.php5.ru [здесь нажмем Enter дважды]
Нажатие Enter соответствует, как правило, комбинации символов CR + LF , обозначаемых как \r\n . Далее будет использоваться именно это обозначение.
По экрану монитора пробежит HTML-код страницы http://www.php5.ru/.
HTML-код текущей страницы можно просмотреть практически в любом браузере, выбрав в меню "Вид|Просмотр HTML-кода":
Картинки, фреймы - это дополнительные запросы: при обработке (парсинге) HTML-кода, браузер, натыкаясь на тэг <img src="картинка"> осуществляет дополнительный запрос к серверу - запрос картинки, и отображает ее на месте, где стоит тэг <img...> .
Введите:
telnet www . php 5. ru 80
GET /php/php5ru.png HTTP/1.0\r\n
Host: www.php5.ru\r\n\r\n
По экрану пробежит то, что бы вы увидели, если б просмотрели этот png -файл в текстовом редакторе.
1.2. HTML-формы. Методы отправки данных на сервер с помощью формы
Одно из наиболее распространенных приложений любого языка создания серверных сценариев – обработка HTML - форм. Web-программирование в большей части представляет собой обработку различных данных, введенных пользователем.
РНР облегчает задачу обработки и разбора форм, поступивших из браузера, так как в язык на самом нижнем уровне встроены все необходимые возможности. Поэтому программисту не приходится даже и задумываться над особенностями протокола HTTP и размышлять, как же происходит отправка и прием ро s т -форм или даже загрузка файлов.
С HTML -формами Вы уже встречались при изучении языка разметки HTML .
Рассмотрим пример посылки сообщения из формы по электронной почте.
Листинг e_mail.html. Посылка сообщения из формы по e-mail
<html>
<head>
<title>Посылка формы по е-mail</title>
</head>
<body>