循环通过会话数组来创建购物车

时间:2017-01-01 11:45:48

标签: php arrays session

单击“添加到购物车”按钮时,我将产品的ID添加到会话数组中。如何设置我的查询以循环遍历我的数组中的所有id值。目前我刚刚将我的会话变量添加到查询中,但显然这不会起作用。

代码:

  $_SESSION['cart'] = array();

  array_push($_SESSION['cart'], $_GET['theid']);


  $query = "Select * From Products WHERE ProdID = '$_SESSION['cart']'";

1 个答案:

答案 0 :(得分:1)

首先,我认为您需要在SQL查询中使用IN运算符:

`SELECT * FROM Products WHERE ProdID IN (1,2,42, etc ...)`

由于您可以在数组中推送ID,因此查询将始终有效。

然后使用implode func将您的数组作为单个字符串在您的SQL查询中进行格式化:http://php.net/manual/fr/function.implode.php

      $str =  implode(',', $_SESSION['cart']) ;
      $query = "SELECT * FROM Products WHERE ProdID = '$str'" ;