В очередной раз запара с сессиями.

Lyahasik

Новичок
В общем при создании корзины смог сделать подсчет общей суммы товаров и вывод на страницах при помощи AJAX и _SESSION. Теперь не могу разобраться как мне вывести выбранные товары на странице корзины.

Сначала думал вывести при помощи одной переменной которая содержит строку с выбранными товарами из бд (id, title) перечисленными через "," между полями и ";" между самими товарами. Потом само собой разложить все на отдельные части с помощью регулярок, столкнулся с проблемой когда обдумывал как вывести эти значения в нужных местах страницы.

Пытался занести в массив _SESSION, но из всего что нашел код не работал.

$_SESSION['cart']=$cart;

Работает нормально, но когда пытаюсь сделать массив то выражение перестает работать. Вот как я пытался занести в массив:

$_SESSION['cart'][]=$cart;

Понимаю что это по сути фигня но не могу догнать ибо к пхп стал обращаться недавно.
 

Lyahasik

Новичок
С выводом справился при помощи строки и explode:

$arri=explode(";", $_SESSION['cart']);
$arris=explode(" ", $arri[0]);
echo $arris[0].'<br>';
echo $arris[1].'<br>';

Простите за лишнюю тему.
 

WMix

герр M:)ller
Партнер клуба
для него лучще вообще не implode'ить
Lyahasik, в сессию можно сохранять и массивы и обьекты, не надо приводить их в строки, а после разбивать
 

p@R@dox 55RU

Новичок
грубый и опасный тон хранить в файле сессии в открытой форме данные..))
 

Фанат

oncle terrible
Команда форума
ахаха, джейсон - это закрыто и безопасно.
Похоже, клоунском сегодня выпускной.
 

p@R@dox 55RU

Новичок
Конешь выпускной! Дата видать тебе запомнилась.. В каком году оттуда выпустился?

А теперь по теме.. Например, ZF2 использует именно такой подход с целью безопасности.. Если не поленишься - то можешь прочитать про эту спецификацию... За одно что то новое узнаешь..
 

WMix

герр M:)ller
Партнер клуба
Конешь выпускной! Дата видать тебе запомнилась.. В каком году оттуда выпустился?

А теперь по теме.. Например, ZF2 использует именно такой подход с целью безопасности.. Если не поленишься - то можешь прочитать про эту спецификацию... За одно что то новое узнаешь..
PHP:
use Zend\Session\Container;
ini_set('session.save_path', __DIR__ . '/data/session');

$container = new Container('namespace');
$container->item = 'foo';

echo `cat data/session/*`;
Код:
__ZF|a:1:{s:20:"_REQUEST_ACCESS_TIME";d:1433029682.6895821;}namespace|C:23:"Zend\Stdlib\ArrayObject":226:{a:4:{s:7:"storage";a:1:{s:4:"item";s:3:"foo";}s:4:"flag";i:2;s:13:"iteratorClass";s:13:"ArrayIterator";s:19:"protectedProperties";a:4:{i:0;s:7:"storage";i:1;s:4:"flag";i:2;s:13:"iteratorClass";i:3;s:19:"protectedProperties";}}}
 

p@R@dox 55RU

Новичок
я это и так прекрасно знаю, пасиб!

+1 к твоей карме, не поленился - посмотрел )) Давай дружить тогда, епта! ))
 

Фанат

oncle terrible
Команда форума
Кто бы сомневался, что наш клоун ни бельмеса не поймет из этой цытаты.
Все-таки, удивительная это штука - самоуверенность невежды, который только что выучил, сколько будет 2х2 и уже готов править миром. Сколько в человеке незамутнённого позитива :))
 

WMix

герр M:)ller
Партнер клуба
ты json или безопасность видишь? а они есть !
 

Lyahasik

Новичок
для него лучще вообще не implode'ить
Lyahasik, в сессию можно сохранять и массивы и обьекты, не надо приводить их в строки, а после разбивать
можете привести пример сохранения массива в сессию? просто из того что я нашел не смог понять как правильно прописать, получалось что строка заносилась в массив и при выводе массив ее раскладывал по символам...
 

Фанат

oncle terrible
Команда форума
сессия - это массив.
все переменные добавляются в массив одинаково
без различия, сессия это, или не сессия.

если не знаешь, как работать с массивами, то раздел по массивам в мануале очень подробный - рекомендую начать с него
 
Сверху