Статьи PHP, Форум, Уроки PHP, дизайн, раскрутка сайта
Портал для программистов, дизайнеров, SEO - оптимизаторов.
Статьи PHP, MySQL, AJAX, Раскрутка сайта, Заработок на своем сайте
Статьи PHP, MySQL, AJAX, Раскрутка сайта, Заработок на своем сайте
TIGER ICQ 3 6 0 2 9 5 6 8 3
     
Выберите раздел
php, javascript,ajax,mysql,TIGER CMS
  Для начинающих
php, javascript,ajax,mysql,TIGER CMS
  Общие
php, javascript,ajax,mysql,TIGER CMS
  Безопасность
php, javascript,ajax,mysql,TIGER CMS
  Интересное
php, javascript,ajax,mysql,TIGER CMS
  Новости PHP
php, javascript,ajax,mysql,TIGER CMS
  PHP + AJAX
php, javascript,ajax,mysql,TIGER CMS
  JavaScript
php, javascript,ajax,mysql,TIGER CMS
  Дизайн
php, javascript,ajax,mysql,TIGER CMS
  Раскрутка
php, javascript,ajax,mysql,TIGER CMS
  Заработок
php, javascript,ajax,mysql,TIGER CMS
  Советы

Поиск
 
 
 

Друзья сайта
 
 
1. www.bvisoft.com
Онлайн счетчик
 

Статистика
  Всего статей: 405
  Опубликовано: 405
  Проверяються: 0
  Добавлено сегодня: 0
--------------------------------------
  Прочитано статей: 405
  Всего прочтений: 155343
--------------------------------------
  Сейчас читают: 6 чел.

Кнопка сайта
  Если мой сайт вам чем-то помог, поставьте, пожалуйста, на своем сайте такую кнопку:
 
  Код кнопки:
 

 

Что такое cookies? [Версия для печати]
Разместил: admin . Раздел: Для начинающих. Опубликовано: 09-20-2007 18:27:11
Дело в том, что в процессе развития www-технологий и внедрения языков программирования в Интернет, перед разработчиками программ возникла очень серьезная проблема - как сохранять результаты выполнения алгоритма для каждого конкретно взятого пользователя на долгое время? Сам по себе протокол http не имеет возможности фиксирования результатов программных процессов. Использование сессий также не является решением проблемы, так как их действие прекращается сразу после разрыва соединения с сервером.

Проблема разрешилась с внедрением механизма cookies (то есть, в переводе с английского, - "печенье"). cookies обладают замечательным свойством - они сохраняются на винчестере пользователя и могут храниться там практически неограниченное время.

По своей сути cookies - это обычные текстовые файлы, хранящиеся в специальной директории, используемой броузером (обычно эта папка называется temporary internet files), и вы можете увидеть их, зайдя в эту директорию (быстрый доступ к ней для броузера ie осуществляется через пункты меню Сервис -> Свойства обозревателя -> Временные файлы Интернета -> Настройка -> Просмотр файлов).

Реализация механизма cookies в php.
Реализация механизма cookies представлена единственной функцией setcookie(). Как и в случае с http заголовками, эта функция должна быть вызвана до отправки каких-либо данных удаленному клиенту, не допускаются даже "пустые" символы, то есть пробел, символы перевода строки и так далее.

Функция имеет следующий синтаксис:

setcookie(имя куки, значение, срок годности, информация о пути, домен, защищенность)

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

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

$data = $name."||".$surname;
setcookie("username", $data);

Заметьте, что отсылаемые данные должны быть оформлены в виде строки, попытка прочитать отосланный ранее массив значений ни к чему не приведет.

cookie, установленная в вышеуказанном примере, будет уничтожена сразу после закрытия броузера пользователем, так как по умолчанию срок жизни cookie устанавливается в ноль. Чтобы изменить этот порядок, необходимо указать третий параметр expire. Определение этого параметра можно произвести двуми способами:

Задать отностительный срок действия с помощью функции time(), к которой прибавляется время в секундах для хранения cookie. Например, чтобы определить cookie на два часа необходимо написать:
setcookie("test 1", "это тестовая куки", time() + 3600 * 2); // 3600 - количество секунд в часе

Второй способ - задание абсолютного срока истечения годности cookie. Он устанавливается с помощью функции mktime(), которая возвращает конкретную дату удаления куки. Если необходимо задать срок жизни cookie до полуночи 1 сентября 2003 года, то следует определить cookie так:
setcooikie("test 2", "куки с абсолютной датой удаления", mktime(0, 0, 0, 9, 1, 2003);

Необязательный параметр пути ограничивает область действия cookie в пределах определенных директорий. Причем в эту область входят все пути, начинающиеся со значения в этом параметре. Например:

setcookie("test 3, "", 0, "/mus");

Мы установили куку, пропустив параметры значения и времени и определив область действия всеми путями, начинающимися со строки "/mus", то есть сюда входят и директория "/music/", и "/museums/". Чтобы однозначно определить путь, необходимо завершить путь слешем. То есть для ограничения действия куки каталогом "/mus", необходимо было написать в параметре "/mus/".

Следующим опциональным параметром является параметр определения действия cookie в пределах указанного домена. Причем значению этого параметра "someserver.com" соответствует только сайт с адресом http://someserver.com, а значению ".someserver.com" соответствуют уже и http://someserver.com, и http://mail.someserver.com, и http://my-someserver.com, то есть все домены, кончающиеся данной строкой.

Последний параметр функции setcookie() указывает на то, что данная cookie должна быть послана через защищенное соединение (https). Этот параметр необходим при установке cookie с конфеденциальными данными.

setcookie("my_cookie", $value, time() + 3600 * 24 * 5, "/", ".myphp.dem.ru", 1);

Чтение cookie.
Обращение к установленной cookie идет через ее имя. Например, продолжая пример выше, прочесть cookie можно следующим образом:

echo "У вас сохранены следующие данные:<br>";
echo $my_cookie;

Обращение к данным, сохраненным в cookie, также может происходить через массив $http_cookie_vars. Он схож с другими подобными массивами, такими как $http_post_vars и другими, и содержит все значения, прочтенные из cookie.

Удаление cookie.
Удаление cookie производится отправкой новой cookie с именем удаляемой без каких-либо дополнительных параметров.

Например:

$data = $my_cookie;
setcookie("my_cookie");
echo "Следующие данные были удалены:<br>" . $data;

На этом закончим сегодняшний урок. До встречи.

источник http://myphp.net.ru

Источник: http://articles.org.ru   Прочитана 605 раз.
  Закладки:  
     
     
     




     
   TIGER EMAIL tiger1989@mail.ru
online SpyLOG тИЦ и PR
Copyright 2007 by TIGERCMS.com
Powered by TIGER-News v1.1