Две функции для работы с cookies на JavaScript'е

    Установка куков на стороне пользователя с помощью JS, иногда необходима, больше для юзабилити нежели для логики приложения, но ведь это самое юзабилити не редко дает возможность удержать пользователя на сайте. И так вот функция для записи "пирожков" в браузер:

function set_cookie(cookie_name, value, expire)
{
    var expire_date = new Date();
    
    expire_date.setDate(expire_date.getDate() + expire);
    document.cookie = (cookie_name + "=" + escape(value) + ((expire == null) ? "" : ";expires=" + expire_date.toGMTString()));

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

function get_cookie(cookie_name)
{
    if (document.cookie.length > 0) {
        cookie_start = document.cookie.indexOf(cookie_name + "=");
        
        if (cookie_start != -1) { 
            cookie_start = ((cookie_start + cookie_name.length) + 1); 
            cookie_end   = document.cookie.indexOf(";", cookie_start);
            
            if ( cookie_end == -1) {
                cookie_end = document.cookie.length;
            }
            
            return unescape(document.cookie.substring(cookie_start, cookie_end));
        } 
    }
    
    return false;
}
    Функция вернет значение cookie, если конечно она была записана и срок не истек.


Раздел: Кодинг Рубрика: JavaScript


Добавлена: 09-03-2009 | Изменена: 09-03-2009 | Пользователем: famous | Просмотров: 5257

Комментарии

igor 17-04-2009 05:47
Я бы посоветовал использовать библиотеки для этого, почти во всех есть работа с "печеньками" выражаясь словами автора :)
admin 20-08-2010 15:12
Наверно имелось в виду что то вроде jquery cookie plugin
Влад 20-08-2010 14:46
В jquery нету


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



капча

Комментарий будет опубликован после проверки модератором

Для подсветки синтаксиса используйте тэги:
<pre><code class="синтаксис" >код</code></pre>
Подерживаются следующие: cpp php javascript sql html-xml css ini

Рубрики