Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
php учебник_весь.doc
Скачиваний:
10
Добавлен:
21.09.2019
Размер:
2.06 Mб
Скачать

Закрытие сессии

После завершения работы с сессией сначала нужно разрегистрировать все переменные сессии, а затем вызвать функциюsession_destroy:

session_destroy

Синтаксис:

session_destroy();

Способы разрегистрации сеансовых переменных различаются в зависимости от того, каким способом они были зарегистрированы.

При включенном register_globals и использовании функции session_register разрегистрация осуществляется при помощи функции session_unregister:

session_unregister

Синтаксис:

session_unregister("username");

Если же регистрация осуществлялась путем с применением ассоциативных массивов, то поступают следующим образом:

unset

Синтаксис:

unset($_SESSION["username"]);

Пример простой сессии

Рассмотрим пример простой сессии, работающей с тремя страницами. При посещении пользователем первой страницы открывается сессия и регистрируется переменная $username. Соответствующий код реализации приведен в листинге:

<?

session_start();

$_SESSION['username'] = "maksim";

echo 'Привет, '.$_SESSION['username']."<br>";

?>

<a href="page2.php">На следующую страницу </a>

Результат работы этого сценария показан на рис:

После этого, пользователь maksim нажимает на ссылку и попадает на страницу page2.php, код которой приведен в листинге:

<?

session_start();

echo $_SESSION['username'].' , ты пришел на другую страницу этого сайта!';

echo("<br>");

?>

<a href="page3.php">На следующую страницу </a>

Результат работы этого скрипта показан на рис:

При нажатии на ссылку, пользователь попадает на страницу page3.php, при этом происходит разрегистрация сеансовой переменной и уничтожение сессии. Соответствующий код реализации приведен в листинге:

<?

session_start();

unset($_SESSION['username']); // разрегистрировали переменную

echo 'Привет, '.$_SESSION['username'];

/* теперь имя пользователя уже не выводится */

session_destroy(); // разрушаем сессию

?>

Как видно из рисунка, после разрегистрации сеансовой переменной значение массива $_SESSION['username'] уже недоступно:

cookies

setcookie()  time()  mktime() 

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

Определение Cookies - это текстовые строки, хранящиеся на стороне клиента, и содержащие пары "имя-значение", с которыми связан URL, по которому броузер определяет нужно ли посылать cookies на сервер.

Установка cookies

Установка cookies производится с помощью функции setcookie:

setcookie

Синтаксис:

bool setcookie (string name [, string value [, int expire [, string path

[, string domain [, int secure]]]]])

Эта функция имеет следующие аргументы:

  • name - имя устанавливаемого cookie;

  • value - значение, хранящееся в cookie с именем $name;

  • expire - время в секундах с начала эпохи, по истечение которого текущий cookie становится недейтвительным;

  • path - путь, по которому доступен cookie;

  • domain - домен, из которого доступен cookie;

  • secure - директива, определяющая, доступен ли cookie не по запросу HTPPS. По умолчанию эта директива имеет значение 0, что означает возможность доступа к cookie по обычному запросу HTTP.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]