Библиотека Интернет Индустрии I2R.ru |
|||
|
Cессии PHP4 (Обзор)Эта статья предназначена для новичков, которые еще не знакомы с этим замечательным механизмом, существенно облегчающим жизнь Web-программистам. Интерпретатор PHP4 можно скачать на сайте www.php.net. Я использую версию 4.1.1, но даже, если у вас версия 4.0.0 все примеры из этой статьи будут работать. Одним из недостатков интерфейса CGI является то, что любая CGI-программа не может длительное время «общаться» с пользователем: она должна запуститься, обработать переданные ей параметры и выдать какой-нибудь результат. Представьте себе, что вам нужно написать некоторую анкету, но полей в ней так много, что они не умещаются в одном окне броузера (а из-за этого, как всегда, страдает дизайн) или нужно обработать некоторые данные перед вводом следующих. Эту проблему можно решить путем использования временного файла. Но, предположим, что в один момент с анкетой работают два или более пользователей, тогда вариант с файлом отпадает сам по себе. Тогда вам нужно будет использовать базу данных, но стоит ли использовать целую базу данных для хранения промежуточных данных? Более продвинутые станут использовать Cookies. Это отличное решение, но PHP4 предоставляет более гибкое решение этой проблемы – механизм сессий. К тому же, у пользователя, зашедшего на ваш сайт, Cookies могут быть отключены. Механизм сессий по умолчанию используется Cookies, но если они отключены, ваши сценарии, использующие сессии, все равно будут работать. О том, как это достигается, поговорим немного позже. Для идентификации пользователя используется идентификатор сессии – SID. Именно с его помощью можно определить, какой пользователь запустил сценарий. Идентификатор сессии хранится в Cookies броузера – вот для чего нужны Cookies! Фактически, SID – это имя временного хранилища, то есть имя временного файла, в котором PHP4 хранит информацию о сессии. Обычно эти файлы размещаются в каталоге /tmp. Рассмотрим самый простой пример использования сессий (см. листинг 1). |