2014-04-30 57 views
0

我正在用php编写脚本,这与购物车非常相似。我想要做的是当用户添加某个产品时,我需要将productid,产品数量和产品大小添加到会话数组中,而无需存储在数据库中。因此,每次用户添加产品时,产品都需要存储在会话变量中。在会话数组中存储多个值并检索

当用户签出时,我需要检索所有productids并显示?

有人可以解释一下我该怎么做吗?因为我的数组只显示1个产品,但不是全部。

我也看过这个平台上的文章,但也didnt CUX再次其存储唯一的变量..链接后

[链接](store mutiple values in php session

感谢名单提前寻求帮助。 ,我试图

代码:

$cart=array("p_id"=>"$_SESSION[productid]", 
      "p_size"=>"$_SESSION[p_size]", 
      "p_qty"=>"$_SESSION[p_qty]"); 

$_SESSION["cart"]=$cart; 


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

}

+0

你需要一个多维数组来做到这一点 - 即它可以存储它里面的多个对象数组对应于添加到购物车每一件产品。 http://webcheatsheet.com/php/multidimensional_arrays.php – adaam

+0

非常感谢您的帮助。我检查了这一点,并让你知道 –

回答

2

你正在覆盖在车中的最后一个产品。取而代之的$_SESSION["cart"]=$cart;$_SESSION["cart"][]=$cart;

$cart = array (
    'p_id' => $_SESSION['productid'], 
    'p_size' => $_SESSION['p_size'], 
    'p_qty' => $_SESSION['p_qty'] 
); 

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


foreach ($_SESSION['cart'] as $item) { 
    echo 'p_id: ', $item['p_id'], '<br />'; 
    echo 'p_size: ', $item['p_size'], '<br />'; 
    echo 'p_qty: ', $item['p_qty'], '<br /><br />'; 
} 
+1

Manolis Agkopian:thanx很多工作。自从最近几天以来,我一直被困在这个问题上,但最后它已经解决了。不过,很多先生:) –

相关问题