添加2个以上项目时PHP会话数组不工作

添加2个以上项目时PHP会话数组不工作,php,arrays,session,shopping-cart,Php,Arrays,Session,Shopping Cart,我想将产品添加到阵列中,但每次添加产品时,它都会替换阵列中的旧产品 当我添加两个东西时,效果很好: Array ( [0] => 2 [1] => 8 ) 但当我尝试添加第三项或更多项时,它会替换数组中的第二项: Array ( [0] => 2 [1] => 10 ) 这是我的密码: session_start(); if(isset($_POST['inCart'])) { $id = $_POST['id']; if(

我想将产品添加到阵列中,但每次添加产品时,它都会替换阵列中的旧产品

当我添加两个东西时,效果很好:

Array ( [0] => 2 [1] => 8 )
但当我尝试添加第三项或更多项时,它会替换数组中的第二项:

Array ( [0] => 2 [1] => 10 )
这是我的密码:

  session_start();

  if(isset($_POST['inCart']))
  {
       $id = $_POST['id'];

       if(!empty($_SESSION['cart']))
       {     
          $session = $_SESSION['cart'];
          $session[] = $id;

          print_r($session);
       }

       else
       {
          $_SESSION['cart'] = array($id); 
       }
  }

正如我看到的,您忘记了使用新数据设置会话

if(!empty($_SESSION['cart']))
       {     
          $session = $_SESSION['cart'];
          $session[] = $id;

          $_SESSION['cart'] = $session;

          print_r($session);
       }

正如我看到的,您忘记了使用新数据设置会话

if(!empty($_SESSION['cart']))
       {     
          $session = $_SESSION['cart'];
          $session[] = $id;

          $_SESSION['cart'] = $session;

          print_r($session);
       }

非常感谢,这是我的一个愚蠢的错误。我也缩短了代码,现在我知道我的错误会话_start();如果(isset($\u POST['inWagen']){$id=$\u POST['id']);如果(isset($\u SESSION['winkelwagen']){$\u SESSION['winkelwagen']]['id;}否则{$\u SESSION['winkelwagen']=array($id);}非常感谢,这是我的一个愚蠢的错误。我也缩短了代码,现在我知道我的错误会话_start();如果(isset($\u POST['inWagen']){$id=$\u POST['id'];如果(isset($\u SESSION['winkelwagen'])){$\u SESSION['winkelwagen'][=$id;}其他{$\u SESSION['winkelwagen']=array('id);}