Запись массива товаров в сессию

222
13 сентября 2017, 14:15

Есть пост обработчик который принимает $id товара. Как сделать массив в который будут добавляться товары в конец, а потом массив в сессию

Answer 1

Постарался всю логику по шагам показать:

<?php 
/* Проверяете есть ли POST ID */
if(isset($_POST['id'])){
/* "Открываете сессию"  */
session_start();
$data = array();
$data = $_SESSION['prID'];
/* Проверяете, нет ли уже данного ID  */
if(!in_array($_POST['id'],$data)){
/* Добавляете ID в массив  */
array_push($data,$_POST['id']);
/* Добавляете массив в сессию */
$_SESSION['prID'] = $data;
}

}
?>

P.S конечно можно укоротить шаги.. )

Answer 2

Что бы добавить элемент к массиву, используем - array_push().

<?php
session_start();              // Для Сессий
                              // Массив с товарами
$arr = Array(
  0 => Array( 
      'id' => 5,
      'name' => 'Pen',
      'category' => 'School'
  ),
  1  => Array(
    'id' => 2,
    'name' => 'Notebook',
    'category' => 'School'
  )
);
$past =  Array('id' => 3, 'name' => 'Book', 'category' => 'Literature');
array_push($arr, $past);        // Добавляем елемент к массиву
$_SESSION['products'] = $arr;   // Заполеняем массив Сессиии
print_r($_SESSION['products']); // Просматриваем массив Сессии
READ ALSO
PHP Fatal error: Call to a member function fetch_all() on a non-object in mysqli.php

PHP Fatal error: Call to a member function fetch_all() on a non-object in mysqli.php

Никак не могу понять где собака зарытаВот код mysqli

247
как связать html и php-файлы?

как связать html и php-файлы?

Добрый деньНедавно начал изучать html и php, и столкнулся с проблемой, которую никак не могу решить

274
Отладка консольного выполнения кода

Отладка консольного выполнения кода

Можно ли в phpstorm настроить отладку так, чтобы можно было одновременно и web часть отлаживать и, если в коде параллельно встречается консольное...

161
Передать XML методом POST

Передать XML методом POST

Необходимо передать данные с интернет магазина на сервер доставки СДЭК с помощью XMLСкрипт просто перестают грузить страницу дальше

271