Привет, пишу интернет магазин, без CMS возникла такая задача. Есть WISHLIST который я решил хранить в куках, это на мой взгляд удобно и не требует регистрации пользователя и хранения вишлиста в БД. На самих карточках товара есть кнопки которые добавляют товар в Wishlist - реализовал это плагином JQuery Cookie кука wishitems ставится при первом заходе и содержит пустой массив - код такой
// это при первом входе создается кука с пустым массивом
if ($.cookie('wishitems') == null) {
var start = [];
$.cookie("wishitems", JSON.stringify(start));
}
// Сама функция с комментариями
function wishlist_add() {
var wishitems = $.parseJSON($.cookie("wishitems")); // Кука превращается из JSON -> array
var current_id = $('#kuka').val(); // Для примера берется ID из инпута пока
var alredy_added = $.inArray(current_id, wishitems); // Проверяется нет ли уже такого ID в массиве
if (alredy_added === -1) {
wishitems.push(current_id); // Если нету то добавляется в массив
$.cookie("wishitems", JSON.stringify(wishitems)); // Превращается в JSON и переписывает куку
}
}
Далее уже на странице WISHLIST в дело вступает PHP, там мне надо получить массив ID для цикла вывода непосредственно товаров.
// Пробы
print_r($_COOKIE['wishitems']); // просто проверяю что выводит - вывод такой ["\"11\",\"12\"] что уже что то не то
$abc = ($_COOKIE['wishitems']); // пробую как есть
$result = json_encode($abc, true); // но JSON в массив PHP не энкодится
$abc = stripcslashes($_COOKIE['wishitems']); // пробую убрать слеши результат ["11","12"]
$result = json_encode($abc, true); // но JSON в массив PHP не энкодится
Вчера убил часа три но так и не добился решения. Как вернуть PHP массив из JSON в куках созданных JQuery Cookie?