Статьи,обзоры,справочники по PHP

       

Использование сессий без Cookies


По статистике, около 20% пользователей по непонятным мне причинам отключают Cookies. Желательно предусмотреть и этот вариант. Перед выполнением следующего примера отключите Cookies в вашем броузере, если это не сделать, то PHP4 будет использовать Cookies и пример будет несколько не так работать. <? session_name("SessionofIvanov"); session_start(); session_register("a"); $a=@$a+1; echo "<html><body>Нажмите Reload, чтобы увеличить счетчик"; echo "<br>Счетчик: $a"; ?> <a href=sesq.php?<?=SID?>>Click here</a>";

Обратите внимание на последнюю ссылку: при отключенных Cookies PHP генерирует константу SID. Если Cookies включены, данная константа ничего не содержит (см. рис.1).  Для работы нашего сценария первый раз нужно перейти по этой ссылке вместо нажатия на Reload. Потом уже можно будет нажимать и на Reload.
Замечание: наш сценарий называется sesq.php

 

Рис.1. Константа SID

При использовании константы SID (см. предыдущий листинг) интерпретатору PHP кажется, что данные об идентификаторе и имени сессии пришли из Cookies броузера.



Содержание раздела