ТОР 5 статей: Методические подходы к анализу финансового состояния предприятия Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века Характеристика шлифовальных кругов и ее маркировка Служебные части речи. Предлог. Союз. Частицы КАТЕГОРИИ:
|
Пример простого приложения с cookiesДавайте создадим простой сценарий, подсчитывающий при помощи cookies количество обращений посетителя к странице. В cookie с именем counter будет храниться число посещений страницы пользователем: <? $counter ++; setcookie ( "counter", $counter ); echo( "Вы посетили эту страницу $counter раз" );?>Результат выполнения сценария на рис.: При работе с cookies необходимо учитывать важный момент, заключающийся в том, что cookie надо обязательно устанавливать перед отправкой в броузер каких-либо заголовков, поскольку сами cookies устанавливаются в виде заголовков. Поэтому если установить cookies после какого-либо текста, отправляемого в броузер, то возникнет ошибочная ситуация. Рассмотрим этот вопрос подробнее, для чего модифицируем код, приведенный в листинге, поместив перед установкой cookie текст: Если здесь поместить текст, то возникнет ошибка, так как будет послан заголовок Content-type: text/html. <? $counter ++; setcookie ( "counter", $counter ); echo( "Вы посетили эту страницу $counter раз" );?>Как видно из рис., при выполнении этого сценария выводится сообщение об ошибке: Заметим, что в этих листингах мы обращаемся к переменной $counter, в которой хранится значение cookie, как к глобальной, что требует наличия включенной директивы register_globals. Если эта директива отключена, то значение, хранящееся в cookie можно получить через глобальный массив $_COOKIE ["name"]: <? $_COOKIE ['counter']++; setcookie ( "counter", $_COOKIE ['counter'] ); echo 'Вы посетили эту страницу '. $_COOKIE ['counter'].' раз' ;?>Поскольку некоторые пользователи отключают cookie в настройках своих браузеров, для корректной работы, в приложение, использующее cookies, необходимо помещать код, проверяющий включены ли cookies у посетителя, и, если нет, то сообщающий ему о необходимости включить cookie: <? if ( !$cookie ) { /* посылаем заголовок переадресации на страницу, с которой будет предпринята попытка установить cookie */ header ( "Location: $PHP_SELF?cookie=1 " ); /* устанавливаем cookie с именем "test" */ setcookie ( "test","1" ); } else { if ( !$test ) { echo( "Для корректной работы приложения необходимо включить cookies" ); } else { /* cookie включены, переходим на нужную страницу */ header ( "Location: http://localhost/test1.php" ); } }?>Не нашли, что искали? Воспользуйтесь поиском:
|