|
|
|
| Подскажите, как запомнить состояние корзины.
Корзина реализована след. способом: массив, в котором индекс - id товара, а значение - кол-во товара (т. е. "классическим" способом).
Мне требуется запомнить состояние корзины на неопред. время. Например: если оборвалось соединение и пользователь зашел повторно (подключился снова) в корзину, там хранились товары добавленные до обрыва связи. | |
|
|
|
|
|
|
|
для: name
(27.08.2006 в 14:42)
| | в базу записывайте ... самое надёжное | |
|
|
|
|
|
|
|
для: Oligarx
(27.08.2006 в 16:11)
| | А если у меня в корзину можно добавлять и не зарегистрированному пользователю, как тогда я узнаю - чья это корзина? | |
|
|
|
|
|
|
|
для: name
(27.08.2006 в 17:05)
| | Тогда cookie | |
|
|
|
|
|
|
|
для: Football
(27.08.2006 в 17:09)
| | Вот я и спрашиваю, как?
Присвоить кукисной переменной массив со значениями id -> count, а потом проверять, если она существует, то foreach-ом выводить? | |
|
|
|
|
|
|
|
для: name
(27.08.2006 в 17:13)
| | Подскажите, как кукисной переменной присвоить массив $_SESSION['cart'] | |
|
|
|
|
|
|
|
для: name
(28.08.2006 в 11:10)
| | Это осуществляется при помощи функции setcookie
<?php
// Устанавливаем cookie на неделю
setcookie("cart", $_SESSION['cart'], time() + 3600*24*7);
?>
|
Затем к cookie можно обращаться как к элементу массива $_COOKIE['cart']. | |
|
|
|
|
|
|
|
для: cheops
(28.08.2006 в 12:47)
| | тут вероятно потребуется сериализация сложной структуры в строку:
<?php
// Устанавливаем cookie на неделю
setcookie("cart", serialize($_SESSION['cart']), time() + 3600*24*7);
?>
и обращаться придется к $cart = unserialize($_COOKIE['cart']) | |
|
|
|
|
|
|
|
для: Trianon
(28.08.2006 в 13:11)
| | Да, если $_SESSION['cart'] - массив - его удобнее сериализовать. | |
|
|
|
|
|
|
|
для: cheops
(28.08.2006 в 13:17)
| | А что значит - сериализовать?
Я пробовал ставить кукисную переменную без сериализации - у меня ничего не получалось. | |
|
|
|
|
|
|
|
для: name
(28.08.2006 в 22:50)
| | В php это означает упаковать массив или объект в строку, которую можно обратно превратить в массив или объект. | |
|
|
|
|
|
|
|
для: cheops
(29.08.2006 в 00:34)
| | Спасибо. Буду пробовать. | |
|
|
|