хранить множественные значения в сеансе php

Я пишу скрипт в php, который очень похож на корзину покупок. что я хочу сделать, когда пользователи добавляют определенный продукт, мне нужно добавить productid в переменную сеанса, не сохраняя в базе данных. поэтому каждый раз, когда пользователь добавляет продукт, productid должен храниться в переменной сеанса.

и когда пользовательские проверки мне нужно получить все продукты и отобразить?

может кто-нибудь объяснить мне, как это сделать? coz im fine с 1 продуктом, но не уверен, как хранить и извлекать несколько значений.

Любая помощь будет высоко ценится

Поместите массив на сеанс . Добавьте элементы в массив.

$_SESSION['cart'] = array(); $_SESSION['cart'][] = $apples; $_SESSION['cart'][] = $oranges; $_SESSION['cart'][] = $pears; 

Примечание: замените $apples , $oranges и $pears идентификаторами вашего продукта.

Вы получаете доступ к массиву, как и любой другой массив в PHP, например, для подсчета элементов:

 echo count($_SESSION['cart']); 

и перебрать элементы:

 foreach($_SESSION['cart'] as $item) { echo $item; } 

Вы также можете обернуть сеанс в объект и предоставить доступ к тележке через интерфейс метода, но я оставляю это для кого-то еще, чтобы объяснить.

Поместите следующее в файл index.php и дайте ему тест:

 <?php session_start(); if(isset($_POST['product'])) { $products = isset($_SESSION['products']) ? $_SESSION['products'] : array(); $products[] = $_POST['product']; $_SESSION['products'] = $products; } ?> <html> <body> <pre><?php print_r($_SESSION); ?></pre> <form name="input" action="index.php" method="post"> <input type="text" name="product" /> <input type="submit" value="Add" /> </form> </body> </html> 

Каждый сеанс является ассоциативным массивом. Вы можете хранить в нем другие массивы, например

 $_SESSION['products']=array(); $_SESSION['products'][]='123123' $_SESSION['products'][]='cow_34526' 

и тогда вы можете работать с этим, как с любым другим массивом, т.е.

 foreach($_SESSION['products'] as $item){ //display or process as you wish } 
 $role=json_encode($checkUser1[0]); $role2=str_replace('"','',$role); $company=json_encode($checkUser2[0]); $company=str_replace('"','',$company); $_SESSION['LOGIN_STATUS']=true; $_SESSION['UNAME']=$uname; $_SESSION['datefrmt']='dd/mm/yy'; $_SESSION['role']=$role2; $_SESSION['company']=$company;