Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 在会话中存储多个值_Php_Mysql_Session - Fatal编程技术网

Php 在会话中存储多个值

Php 在会话中存储多个值,php,mysql,session,Php,Mysql,Session,我是PHP新手。我正在创建一个网络商店。我想将购物车中产品的值传递给会话。会话的值将显示在签出页面中。请帮帮我。这是密码 $i = 0; $sum = 0; foreach($_SESSION["cart_array"] as $each_product){ $product_id = $each_product['productID']; $sql=mysql_query("select * from tblpro

我是PHP新手。我正在创建一个网络商店。我想将购物车中产品的值传递给会话。会话的值将显示在签出页面中。请帮帮我。这是密码

$i = 0;
        $sum = 0;
        foreach($_SESSION["cart_array"] as $each_product){
            $product_id = $each_product['productID'];
            $sql=mysql_query("select * from tblproduct where prod_id='$product_id'");
            while($row=mysql_fetch_array($sql)){
                $prodNo = $row["prod_no"];
                $prodID = $row["prod_id"];
                $prodName = $row["prod_name"];
                $prodPrice = $row["prod_price"];
                $prodQuan = $row["prod_quan"];
                $supp = $row["supplier"];
                $sum +=$row['prod_price'];
                $pricetotal=$prodPrice*$each_product['quantity'];
                $productname=array();
                $productname[] = $prodName;
                $_SESSION['name'] = $productname;

            }

您需要取消对
$productname
的初始化。当循环完成时,您只需要分配给会话变量

        $productname=array();            
        while($row=mysql_fetch_array($sql)){
            $prodNo = $row["prod_no"];
            $prodID = $row["prod_id"];
            $prodName = $row["prod_name"];
            $prodPrice = $row["prod_price"];
            $prodQuan = $row["prod_quan"];
            $supp = $row["supplier"];
            $sum +=$row['prod_price'];
            $pricetotal=$prodPrice*$each_product['quantity'];
            $productname[] = $prodName;
        }
        $_SESSION['name'] = $productname;

所有其他变量,如
$prodNo
$prodID
在循环中每次都会被覆盖,因此循环完成后,它们只包含最后一行的值。我不知道你为什么要设置它们,除非循环中有使用它们的代码,但你没有显示。

对不起。没有错误。唯一的问题是,当我添加新值时,它只重写$productname[]中的最后一个值。