Использование файлов cookie с PHP

Как разработчик веб-сайта вы можете использовать PHP для установки файлов cookie, содержащих информацию о посетителях вашего веб-сайта. Файлы cookie хранят информацию о посетителе сайта на компьютере посетителя, к которой можно получить доступ при повторном посещении. Одним из распространенных способов использования файлов cookie является хранение токена доступа, чтобы пользователю не приходилось входить в систему каждый раз, когда он посещает ваш веб-сайт. Файлы cookie могут также хранить другую информацию, такую ​​как имя пользователя, дату последнего посещения и содержимое корзины покупок.

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

В PHP функция setcookie () определяет cookie. Он отправляется вместе с другими заголовками HTTP и передается до того, как будет проанализировано тело HTML.

Файл cookie следует синтаксису:

 setcookie (name, value, expire, path, domain, secure, httponly); 

data-type = “code”>

, где name обозначает имя файла cookie, а value описывает содержимое файла cookie. Для функции setcookie () требуется только параметр name . Все остальные параметры необязательны.

Чтобы установить файл cookie с именем «UserVisit» в браузере посетителя, который устанавливает значение на текущую дату , а также устанавливает срок действия в 30 дней (2592000 = 60 секунд * 60 минут * 24 часа * 30 дней), используйте следующий PHP-код:

  php 
$ Month = 2592000 + time ();
//это добавляет 30 дней к текущему времени
setcookie (UserVisit, date ("F jS - g: ia "), $ Month);
?>

data-type =” code “>

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

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

  php 
if (isset ($ _ COOKIE ['UserVisit']))
{
$ last = $ _COOKIE ['UserVisit'];
echo "С возвращением!
Вы были в последний раз на ". $ last;
}
else
{
echo "Добро пожаловать на наш сайт!";
}
?>

data-type = “code”>

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

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

Чтобы уничтожить cookie, используйте setcookie () снова, но установите срок годности в прошлом:

  php 
$ past = time () - 10;
//это делает время 10 секунд назад
setcookie (UserVisit, date ("F jS - g: ia"), $ past);
?>

data-type = “code”>

Дополнительные параметры

В дополнение к value и expire, функция setcookie () поддерживает несколько других необязательных параметров:

  • Путь определяет путь к файлу cookie на сервере. Если вы установите его на «/», то cookie будет доступен для всего домена. По умолчанию cookie работает в каталоге, в котором он установлен, но вы можете заставить его работать в других каталогах, указав их с помощью этого параметра. Эта функция каскадируется, поэтому все подкаталоги в указанном каталоге также будут иметь доступ к cookie.
  • Домен определяет конкретный домен, в котором работает cookie. Чтобы cookie работал на всех поддоменах, явно укажите домен верхнего уровня (например, «sample.com»). Если вы установите домен на «www.sample.com», то cookie будет доступен только в субдомене www.
  • Secure указывает, должен ли cookie передавать через безопасное соединение. Если для этого значения установлено значение ИСТИНА, то cookie будет установлен только для HTTPS-соединений. Значение по умолчанию – ЛОЖЬ.
  • Httponly , если установлено значение ИСТИНА, разрешит доступ к cookie только по протоколу HTTP. По умолчанию значение FALSE. Преимущество установки cookie в TRUE состоит в том, что языки сценариев не могут получить доступ к cookie.
Оцените статью
recture.ru
Добавить комментарий