Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
исис.docx
Скачиваний:
17
Добавлен:
21.03.2015
Размер:
210.53 Кб
Скачать
  1. Сеансы в рнр

Переменная сеанса является специальным типом переменной, значение которой сохраняется при переходе между последовательными страницами Web. C помощью переменных сеанса специфические данные пользователя можно сохранять при переходе со страницы на страницу, предоставляя ему индивидуализированный контент при взаимодействии пользователя с приложением Web. Переменные сеанса существуют обычно, пока не выполняется одно из следующих событий:

  1. пользователь закрывает окно браузера;

  2. завершение заданного на сервере максимального интервала времени сеанса;

  3. использование функций PHP, таких, как session_destroy(), чтобы освободить все существующие в данный момент переменные сеанса.

Проблема, которую должны решить переменные сеанса, состоит в том, что протокол HTTP, используемый в Web, не имеет состояния. Каждый запрос страницы совершенно независим от предыдущих запросов, поэтому, если требуется, чтобы последующие страницы "запоминали" имя пользователя, которое он вводит на первой странице, то эту информацию надо где-то сохранить. Система PHP имеет ряд средств для поддержки сеансов. Это руководство начинается с введения глобальной переменной $_SESSION[]. Переменную $_SESSION[]рекомендуется использовать для улучшения безопасности и удобочитаемости кода. Также вводятся функции сеанса session_start() и session_destroy(). Каждая из них определена ниже: $_SESSION[] – суперглобальный массив PHP, который содержит зарегистрированные в данный момент переменные сеанса сценария. session_start() – инициализация данных сеанса. Эта функция вызывается перед созданием новой переменной сеанса с помощью $_SESSION[]. session_destroy() – разрушает все данные, зарегистрированные для текущего сеанса сценария header("Location: http://www.domain.com") – функция header используется для перенаправления браузера на страницу, определенную параметром Location.

  1. Файлы Cookies

Файл cookie является сообщением от браузера Web-серверу. Браузер сохраняет сообщение в текстовом файле. Это сообщение посылается затем назад на сервер каждый раз, когда браузер запрашивает страницу с сервера.

Основное назначение cookies состоит в идентификации пользователей и возможной подготовке специально настроенной для них страницы Web. При посещении сайта Web, использующего cookies, на сайте может быть предложено заполнить форму, чтобы предоставить такую информацию, как свое имя и возможные интересы. Эта информация упаковывается в cookie и посылается браузеру Web, который сохраняет ее для последующего использования. Когда вы в следующий раз посещаете тот же самый сайт Web, браузер пошлет cookie серверу Web. Сервер может использовать эту информацию, чтобы создать индивидуализированные страницы Web. Поэтому, например, вместо обычной приветственной страницы можно увидеть приветственную страницу со своим именем. В PHP файлы cookies создают с помощью функции setcookie(). Все данные cookie хранятся в глобальной переменной PHP $_COOKIE и доступны для последующих страниц. setcookie(name,value,expiration,path,domain,security) – определяет файл cookie, который посылается вместе с остальными заголовками HTTP. Как и другие заголовки, файлы cookie должны посылаться до какого-либо вывода работы сценария (это ограничение протокола). Поэтому требуется, чтобы обращение к функции было помещено до любого вывода, включая теги и любые символы разделители. Если вывод происходит до обращения к этой функции, то setcookie() не выполнится и вернет FALSE. Еслиsetcookie() выполняется успешно, то возвращается TRUE. Это не указывает на то, что пользователь принял cookie. Параметры setcookie() объясняются в следующей таблице.