Чтение и запись cookies на jQuery & PHP

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

Но эта простота и является также одной из причин его широкого внедрения в Интернете.

Однако, существует способ сохранять информацию между запросами в виде cookies. Таким образом, у вас появится эффективное управление сессиями и данными.

Есть два способа работы с cookies – на стороне сервера (PHP, ASP и т.д.) и на стороне клиента (JavaScript).

В этой статье мы рассмотрим, как можно управлять cookies с помощью PHP и JavaScript.

Cookies и PHP
Запись cookies
Чтобы создать cookie в PHP, вы должны использовать функцию setcookie. Она принимает ряд параметров (все, кроме первого, являются необязательными и могут быть опущены):
setcookie(
	'pageVisits',				// Имя cookie, обязательно
	$visited,					// Значение cookie
	time()+7*24*60*60,			// Срок действия
	'/',						// Каталог
	'demo.tutorialzine.com'		// Домен
);

Если вы передаете 0, как срок действия (по умолчанию), cookie будет потерян при перезагрузке браузера. Параметр “/” указывает, что cookie будет доступен для всех директорий домена (при желании, можно связать cookie с одним каталогом, например с /admin/ в качестве параметра).

Есть два дополнительных параметра, которые вы могли бы использовать в функции, но, которые здесь не приводятся. Они могут принимать, только булевые значения — истина или ложь.

Первый означает, что cookie будет передан только через защищенное соединение HTTPS, а второй, что cookie не будет доступен через JavaScript (введено в PHP 5.2).

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

Чтение cookies
Чтение cookie с помощью PHP намного проще. Все cookies, которые были переданы скрипту, доступны в суперглобальном массиве $_COOKIE.

В нашем примере, чтобы прочитать cookie, мы написали следующий код:
$visits = (int)$_COOKIE['pageVisits']+1;
echo "You visited this site: ".$visits." times";

Стоит отметить, что запись cookies через setcookie доступна в массиве $ _COOKIE на next page load.
Запомните это.

Удаление cookies
Чтобы удалить cookies, просто используйте функцию setcookie с параметром срока действия прошедшего времени.
setcookie(
	'pageVisits',
	$visited,
	time()-7*24*60*60,		//Одна неделя назад и cookie будет удален.
	'/',
	'demo.tutorialzine.com'
);

Cookies и jQuery
Чтобы использовать cookies с jQuery, вам необходим специальный .

Запись cookies
Запись cookies с плагином Cookie интуитивно понятна:
$(document).ready(function(){

	$.cookie("kittens","Seven Kittens");

	$.cookie("demoCookie",text,{expires: 7, path: '/', domain: 'demo.tutorialzine.com'});
});

Чтение cookies
Чтение cookie еще проще. Просто вызовите функцию $.cookie() с параметром имени, значение cookie будет возвращено:
$(document).ready(function(){

	var str = $.cookie("kittens");
});

Удаление cookies
Чтобы удалить куки, снова используйте функцию $.cookie(), но в качестве второго параметра укажите значение null.
$(document).ready(function(){

	var str = $.cookie("kittens",null);
});

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

Однако, благодаря этой простой технологии, при надлежащих мерах предосторожности, вы можете получить большую интерактивность сайта.
Теги:
Чтение, запись, cookies
Добавлено: 04 Мая 2018 08:38:00 Добавил: Андрей Ковальчук Нравится 0
Добавить
Комментарии:
Нету комментариев для вывода...