Виртуальный Брест
Главная Портал Форум Рассылки Контакт Для клиентов Статьи

Запчасти для телефонов и ноутбуков
Запчасти для телефонов и ноутбуков
 
Геологические работы
Геологические работы
 
Экскурсии в Европу, из Бреста!
Экскурсии в Европу, из Бреста!
 

Виртуальный хостинг - дом для вашего сайта - лучшее предложение в Бресте!


Полный список глав книги

Что такое cookie


Ну, допустим, считать своих посетителей мы научились. А как сделать счетчик персонального учета посещаемости? Так, что бы вывести посетителю информацию о том, сколько раз он заходил на Вашу страничку.

Эта задача несколько иного рода, хотя решается она на самом деле еще проще. Но сначала нам придется познакомиться с одной очень полезной и важной штукой. Я имею в виду технологию cookie. Переводится на русский это английское слово примерно так – печенье, кусочек. В данном случае имеется в виду кусочек информации, записанной сервером на компьютер посетителя. В дальнейшем эту информацию можно извлечь, причем сделать это может только тот сервер, что записал ее туда. Информация ограничена размером 4 килобайта. Есть ограничения по времени существования cookie, по их количеству и т.д. Бояться этой технологии не нужно, и многие сайты очень активно используют ее для сбора информации о своих клиентах, их предпочтениях, настройках и т.д.

Для примера представьте себе форум, в котором нужно обязательно указывать имя, адрес или другую информацию. Обычно все это приходится каждый раз вводить заново, а с помощью cookie все данные можно запомнить на компьютере клиента и при следующем посещении форума их извлечь и воспроизвести в форме. Еще проще – один раз запомнить имя посетителя, и каждый раз приветствовать его по имени.

Самый простой способ установить cookie с помощью РНР – это использовать специальный оператор:

setcookie('name', '12345');

Теперь, пока не будет закрыто окно браузера пользователем, переменную $name со значением, равным числу 12345 можно считать с помощью другого оператора:

isset ($name);
Причем как бы не пришлось путешествовать по страничкам сайта, эта переменная будет доступна везде, на любой из них. Пока посетитель не уйдет с этого сайта.

Часто делают сразу проверку, установлена или нет соответствующая переменная, и на основе полученных результатов принимают решение, что делать дальше:

If (isset ($name)) { … установлена … } else { … нет … }

Надо помнить, что установленный таким образом cookie живет только до тех пор, пока не закрыто окно браузера, его породившее. Как только пользователь закрывает окно, установленная переменная уже не доступна. Это – так называемый сессионный cookie.

Впрочем, совсем не сложно продлить срок жизни cookie до нужного времени. Делается это с помощью третьего параметра оператора setcookie, который указывает дату истечения срока действия  cookie либо срок его действия, если число меньше, чем дата установки:

 
$y = mktime(0,0,0,1,1,2002);
setcookie('name', 'bret', $y);
 

Перед тем, как задать третий параметр, его нужно сформировать специальной функцией. Дело в том, что в РНР этот параметр указывает на количество секунд, прошедшее после 1 января 1970 года. Немного странно, но уж как есть. Функция mktime() именно для этого и предназначена. Ей нужно указать час, минуту, секунду, месяц, день и год в такой же последовательности. На выходе получим нужное значение в секундах, прошедших с 1.01.1970. В примере cookie будет жизнеспособен (а значит, и поддастся считыванию) до 1 января 2002 года (данные из примера выше).

Переустановить или удалить cookie очень просто – достаточно указать либо новое значение, либо не указать его вовсе.

И под конец одно существенное ограничение. В силу определенных свойств работа с cookie должна вестись до какого-либо вывода на экран (в браузер пользователя) любого текста, в том числе и тегов HTML (даже пробел нельзя ставить).

То есть вот так уже не сработает:

 
<html>
… работаем с cookie …
 
Только так:
 
… работаем с cookie …
<html>
… любые другие теги и текст …
 

Запомните это ограничение и старайтесь подстраиваться под него, так как тут ничего поделать нельзя. Это не РНР виноват, так уж устроены эти самые cookie.

Читать еще...



Стивен Сеов

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

Р. Бенедетти, Р. Крэнли

Изучаем работу с jQuery
Хотите добавить интерактивности своему интернет-сайту? Узнайте, как jQuery позволит вам создать целый набор скриптов, используя всего несколько строчек кода! С помощью этого...

Чак Муссиано, Билл Кеннеди

HTML и XHTML. Подробное руководство
"HTML и XHTML. Подробное руководство" - самая полная и современная книга по языкам HTML и XHTML, разъясняющая работу и взаимодействие каждого их элемента. Она удачно сочетает в...

Аарон Уолтер

Эмоциональный веб-дизайн
О чем эта книгаРеальность, с которой мы все сталкиваемся, - это типовые и однообразные интернет- сайты магазинов, информационных порталов, сервисов и т.п. Однообразие - не лучший...

    Информация

Главная - переход на начало
Тарифы на Российский хостинг
Правила - что можно а что нет
Заказ - сделайте это сейчас
Выбор домена - найди свое имя
Регистрация домена - купить
Оплата - варианты для всех
Панель управления Россия
Панель управления Беларусь
Вопросы и ответы - информация
Разработка сайтов - сопровождение
Виртуальный Брест - портал
Контакт - обратная связь
Наш форум - пообщаемся?

Список доменов
в которых доступна бесплатная регистрация имен при покупке хостинга, а так же открытие поч- тового ящика:

Новости Бреста:

Второй порыв теплосетей в Бресте - двенадцать многоэтажных домов и один детский сад остались без тепла
Почти тонну мёда задержали налоговики при проверке в Бресте
Зарплата в конвертах в Бресте - видео
Трое жителей Кавказа в "поисках работы" забрались прямо в лес в пограничную зону
Профилактика квартирных краж - важно
Современный животноводческий комплекс на 1500 голов строится в СПК "Королевский" Кобринского района - фото
Результаты проходящей на территории Брестской области акции "Не упусти свой шанс"
Осенний месячник по наведению порядка на земле проходит на Брестчине - важно
В Лунинецком районе в водоеме нашли автомобиль с телом внутри
ГАИ: брестчанин решил стать маршрутчиком и в пьяном состоянии вез горожан

© Виртуальный Брест 2001 - 2009 Автор проекта: Андрей Кухарчик Дизайн: Partgraphic