Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Корзина на JS с использованием COOKIE (https://javascript.ru/forum/dom-window/15522-korzina-na-js-s-ispolzovaniem-cookie.html)

vah-smile 02.03.2011 18:34

Корзина на JS с использованием COOKIE
 
Помогите сделать корзину на JS c использованием COOKIE! Мне нужно, чтобы при нажатии на кнопку "Купить" в cookie заносился выбраный товар со следующими полями:
• id - id товара
• name - назва товара
• kol - количество товара
• price - цена

Вот нашел такую статью, но переделать ее для себя - никак не получается!



function getCookie(c_name) 
{
    if (document.cookie.length>0) 
    {
        c_start=document.cookie.indexOf(c_name + "=");
        if (c_start!=-1) 
        {
            c_start=c_start + c_name.length+1;
            c_end=document.cookie.indexOf(";",c_start);
            if (c_end==-1) c_end=document.cookie.length;
            return unescape(document.cookie.substring(c_start,c_end));
        }
    }
    return "";
}

function setCookie(c_name,value,expiredays) 
{
    var exdate=new Date();
    exdate.setDate(exdate.getDate()+expiredays);
    document.cookie=c_name+ "=" +escape(value)+((expiredays==null) ? "" : ";expires="+exdate.toGMTString());
}

function deleteCookie(name) 
{
    var expt = new Date();
    expt.setTime (expt.getTime() - 1000000000);
    var cval = getCookie (name);
    document.cookie = name + "=" + cval + "; expires=" + expt.toGMTString() + ";";
}

// Приклад використання:
// заносимо в Cookie змінну myCookieVar,
// яка має значення "1234567" і зберігатиметься 7 днів
setCookie('myCookieVar', '1234567', 7);
// у віконечку буде виведено «1234567»
alert( getCookie('myCookieVar') );
// видаляємо з Cookie змінну myCookieVar,
deleteCookie('myCookieVar');

ksa 03.03.2011 09:11

Цитата:

Сообщение от vah-smile
Мне нужно, чтобы при нажатии на кнопку "Купить" в cookie заносился выбраный товар со следующими полями:
• id - id товара
• name - назва товара
• kol - количество товара
• price - цена

Сколько платишь?

vah-smile 05.03.2011 16:16

Цитата:

Сообщение от ksa (Сообщение 94718)
Сколько платишь?

А можно ли рпосто дать совет или сылочку по тому, как загнать масив->COOKIE->масив?

Kolyaj 05.03.2011 16:37

Цитата:

Сообщение от vah-smile
как загнать масив->COOKIE->масив?

Сериализуем массив в строку любым удобным способом (например, JSON.stringify)
Записываем строку в куку.

Читаем куку.
Делаем из строки массив обратным преобразованием первого пункта (например, JSON.parse)


Часовой пояс GMT +3, время: 07:55.