Установить COOKIE используя JavaScript

Author Роман Чернышов    Category JavaScript / jQuery     Tags , , Комментариев 1 Дата 9 Фев

cookie Установить COOKIE используя JavaScriptРаботая с очередным проектом, мне пришлось прибегнуть к использованию cookie. Для запоминания сайтом, выбранного пользователем региона страны. Это было необходимо сделать для отсортировки информации относящейся только к заданному региону. По причине разного рода соображений, вариант с использованием PHP был исключен. И пришлось подключать JavaScript и уже дальше с помощью его устанавливать и считывать соответствующие кукисы.

Из множества предложенных вариантов, я остановился на универсальном решении, которое нашел на каком то форуме. Затем немного изменил его под свои нужды, в результате получились следующие две функции, корректно работающие во всех современных браузерах. В IE6, данное решение также работает замечательно.

function getCookie(name) { //  берет кукес
var cookie = " " + document.cookie;
var search = " " + name + "=";
var setStr = null;
var offset = 0;
var end = 0;
if (cookie.length > 0) {
offset = cookie.indexOf(search);
if (offset != -1) {
offset += search.length;
end = cookie.indexOf(";", offset)
if (end == -1) {
end = cookie.length;
}
setStr = unescape(cookie.substring(offset, end));
}
}
return(setStr);
}
 
function set_cookie(name, value, expires) // устанавливает кукес
{
if (!expires)
{
expires = new Date();
}
document.cookie = name + "=" + escape(value) + "; expires=" + expires.toGMTString() +  "; path=/";
}

Удобство использования JavaScript еще заключается в том, что cookie можно установить без перезагрузки страницы, в отличии от решений на PHP.

Надеюсь данный пример пригодиться новичкам)). Кстати замечу, такой подход используется мною во многих моих проектах. Но учтите, что нужно подстраховываться, на случай если у пользователя в браузере будет отключен яваскрипт. Поэтому не стоит забывать, про резервный метод… Я о том же PHP…

1 Comment to “Установить COOKIE используя JavaScript”

  • Роман Чернышов 09.02.2011 в 8:43 пп

    пример использования:
    set_cookie(‘name’, ‘Иванов Сергей’);
    getCookie(‘name’);

Оставить комментарий

Консультации

Консультант Чернышов Р.В. Зайдайте вопрос на любую из тем:
Бесплатно и без регистрации!

Задать вопрос
Все вопросы
Последние вопросы
Поиск по блогу
Категории
Архив
Новое на сайте
Портфолио Все работы


www.detskiy-mir.net
www.detskydoctor.ru
www.betelit.ru
www.all-alliance.ru
www.videogonok.ru
www.carpfishing.by
www.property-greek.com
www.domcons.ru

с 2009 года по сегодняшний день, создано более 300 сайтов...