
Reg.ru: домены и хостинг
Крупнейший регистратор и хостинг-провайдер в России.
Более 2 миллионов доменных имен на обслуживании.
Продвижение, почта для домена, решения для бизнеса.
Более 700 тыс. клиентов по всему миру уже сделали свой выбор.

Бесплатный Курс "Практика HTML5 и CSS3"
Освойте бесплатно пошаговый видеокурс
по основам адаптивной верстки
на HTML5 и CSS3 с полного нуля.

Фреймворк Bootstrap: быстрая адаптивная вёрстка
Пошаговый видеокурс по основам адаптивной верстки в фреймворке Bootstrap.
Научитесь верстать просто, быстро и качественно, используя мощный и практичный инструмент.
Верстайте на заказ и получайте деньги.
*Наведите курсор мыши для приостановки прокрутки.
Установка и чтение cookies с помощью jQuery и PHP
HTTP - протокол, не имеющий "памяти", то есть каждый запрос, приходящий к серверу рассматривается как отдельный, никак не связанный с другими запросами. Именно поэтому он не может хранить данные сам по себе. Однако эта простота была также и одной из причин его быстрого и широкого распространения в ранние годы развития сети Интернет.
Есть, однако возможность сохранять информацию между запросами. Делается это с помощью Cookies. С их помощью можно эффективно управлять сессиями и сохранять необходимые данные.
Есть два способа работы с Cookies - на стороне сервера (PHP, ASP и т.д.), и на стороне клиента (браузера) - JavaScript. В данной небольшой статье мы посмотрим, как создаются и читаются данные из Cookies как в PHP, так и с помощью JavaScript.
Cookies и PHP
Создание cookies
Для создания cookies в PHP нужно воспользоваться функцией setcookie(). Она принимает ряд параметров (все, за исключением первого параметра необязательны, и могут быть опущены):
setcookie( 'pageVisits', // Имя cookie, обязательный параметр $visited, // The value of the cookie time()+7*24*60*60, // Время, на которое устанавливается cookie - на неделю вперед '/', //Путь к папке, для которой будет доступен cookie 'codeharmony.ru' //Домен, к которому будет привязан файл cookie );
Если передать значение "0" в качестве параметра для срока истечения действия cookie (это значение по умолчанию), - cookie будет уничтожаться при перезапуске браузера. Параметр "/" означает, что cookie будет доступен для всех подпапок на данном домене (в случае необходимости вы можете "привязать" cookie к какой-то отдельной директории, скажем, передав параметр наподобие "/admin/").
Есть еще два дополнительных параметра для данной функции, которые мы не отметили. Они определяются булевыми значениями. Первый из них определяет, будет ли cookie передаваться только по безопасному протоколу HTTPS, а второй - то, что cookie не будут доступны через JavaScript (введено в PHP 5.2).
Для большинства практических задач вполне хватит первых четырех параметров, остальные же обычно можно опустить.
Считывание (чтение) cookies
Считывание cookie средствами PHP намного проще. Все cookie, преданные скрипту, доступны через суперглобальный массив $_COOKIE. В нашем случае, чтобы считать значение из cookie, мы должны написать следующее:
$visits = (int)$_COOKIE['pageVisits']+1; echo "Вы посетили этот сайт: ".$visits." times";
Сейчас самое время отметить, что cookies, установленные с помощью функции setcookie() становятся доступны через массив $_COOKIE при следующей загрузке страницы.
Удаление cookies
Для удаления cookies используется та же функция setcookie(), которой в данном случае нужно передать в качестве параметра, определяющего "время жизни" cookie любое время из прошлого.
setcookie( 'pageVisits', $visited, time()-7*24*60*60, // Неделя назад. Файл cookie будет удален '/', 'codeharmony.ru' );
Cookies и jQuery
Для использования cookies с JQuery вам понадобится специальный плагин cookie.
Создание cookies
Создание cookies с помощью плагина достаточно интуитивно понятное:
$(document).ready(function(){ // Установка cookie kittens, исчезнет после перезапуска браузера: $.cookie("kittens","Seven Kittens"); // Установка demoCookie (как в демо): $.cookie("demoCookie",text,{expires: 7, path: '/', domain: 'codeharmony.ru'}); // "text" - переменная, в которую сохраняется значение cookie });
Считывание (чтение) cookies
Считывание еще проще. Нужно просто вызвать функцию $.cookie() с единственным параметром - именем cookie. При этом будет возвращено значение cookie.
$(document).ready(function(){ // Получаем cookie kittens: var str = $.cookie("kittens"); // str теперь содержит "Seven Kittens" });
Удаление cookies
Для удаления cookie снова используем функцию $.cookie(), но передавая "null" как второй параметр.
$(document).ready(function(){ // Удаляем cookie kittens: var str = $.cookie("kittens",null); // cookie kittens больше не существует });
Резюмируя
В этой небольшой статье мы рассмотрели то, как устанавливать и считывать информацию из cookies. Самое время заметить, что в cookies не следует хранить важную информацию вроде паролей, имен пользователей и т.п., так как они передаются как обычные заголовки при каждой загрузке страницы и могут быть легко считаны злоумышленниками. Однако, с надлежащими предосторожностями при помощи этой несложной технологии можно добиться более высокого уровня интерактивности при взаимодействии с посетителями сайта.
По материалам tutorialzine.com
Перевод - Дмитрий Науменко
P.S. Присмотритесь к премиум-урокам по различным аспектам сайтостроения, а также к бесплатному курсу по созданию своей CMS-системы на PHP с нуля. Все это поможет вам быстрее и проще освоить JavaScript и PHP:
Понравился материал и хотите отблагодарить?
Просто поделитесь с друзьями и коллегами!
Смотрите также: