Leonid
PHP? нет, не слышал...
Запись куков Java Script-ом и чтение их потом PHP
При заказе товара на сайте необходимо в куки записать массив данных: ID товара, количество, и еще 2 параметра товара. Делаю это java script ом. (Функцию нашел на этом форуме, только немного изменил)
value = new Array();
value[0] = tovarID; // 100
value[1] = number; // 5
value[2] = materialID; // 2
value[3] = sizeID; // 3
var today = new Date();
var name = "zakaz";
expires = new Date(today.getTime() + days*24*60*60*1000);
document.cookie = name + "=" + escape(value) +"; expires=" + expires.toGMTString();
Кука устанавливается, но когда я ее читаю в PHP
echo $_COOKIE['zakaz'] выводится 100,5,2,3 - все числа через запятую, если
Echo $_COOKIE['zakaz'][0] - выводится 1, т.е. первый символ строки 100,5,2,3.
Т.е. массив JavaSkripta отличается от массива PHP, это в принципе так и должно быть. А как запихнуть в куку идентичные массивы?
Я решил пихать в куку не массив, а строку, объединив все цифры, например символом "!", а разные группы символом "%", потом PHP читает эту строку из куков, режет по %, потом по !.
Не очень изящный метод на мой взгляд.
Кто-нибудь сталкивался с подобной задачей? Поделитесь
При заказе товара на сайте необходимо в куки записать массив данных: ID товара, количество, и еще 2 параметра товара. Делаю это java script ом. (Функцию нашел на этом форуме, только немного изменил)
value = new Array();
value[0] = tovarID; // 100
value[1] = number; // 5
value[2] = materialID; // 2
value[3] = sizeID; // 3
var today = new Date();
var name = "zakaz";
expires = new Date(today.getTime() + days*24*60*60*1000);
document.cookie = name + "=" + escape(value) +"; expires=" + expires.toGMTString();
Кука устанавливается, но когда я ее читаю в PHP
echo $_COOKIE['zakaz'] выводится 100,5,2,3 - все числа через запятую, если
Echo $_COOKIE['zakaz'][0] - выводится 1, т.е. первый символ строки 100,5,2,3.
Т.е. массив JavaSkripta отличается от массива PHP, это в принципе так и должно быть. А как запихнуть в куку идентичные массивы?
Я решил пихать в куку не массив, а строку, объединив все цифры, например символом "!", а разные группы символом "%", потом PHP читает эту строку из куков, режет по %, потом по !.
Не очень изящный метод на мой взгляд.
Кто-нибудь сталкивался с подобной задачей? Поделитесь