繁体   English   中英

在会话中保存变量值,如使用单一表单的购物车

[英]Save variable value in session like cart with single form

我在 5 页的侧边栏中有一个简单的表单,其中有两个字段名称和价格。 当用户提交表单时,我想在会话中保存它的值。 当我在提交表单后将其值存储在会话中时,它每次都会替换名称。 但我想像数组一样存储名称值。 如果用户使用名称 user1 提交表单,然后使用用户名 user2 再次提交,那么我想在会话变量中显示这两个名称,并希望显示表单提交的增量。 喜欢购物车功能。 有没有办法用一个表单来存储这些值。 请帮我。

 <form id="myform" action="post.php" method="POST">
<div class="row">
    <label for="name">Your name:</label><br />
    <input id="name" class="input" name="name" type="text" value=""  size="30" /><br />
</div>
<div class="row">
    <label for="price">Price:</label><br />
    <input id="price" class="input" name="price" type="text" value="" size="30" /><br />
</div>

<input id="submit_button" type="submit" value="submit" />
 </form>     

post.php
session_start();

$_SESSION['cart_items'] = array(); 
$_SESSION['cart_items'] = $_POST['name'];

foreach($_SESSION["cart_items"] as $cart_item)
{
    echo $cart_item;
}

尝试通过以下方式向会话添加值

session_start();
foreach ($_SESSION["products"] as $cart_itm) //loop through session array
        {
            if($cart_item["code"] == $product_code){ //the item exist in array

            $product[] = array('name'=>$cart_item["name"], 'code'=>$cart_item["code"], 'qty'=>$product_qty, 'price'=>$cart_item["price"]);
            $found = true;
        }else{
            //item doesn't exist in the list, just retrieve old info and prepare array for session var
            $product[] = array('name'=>$cart_item["name"], 'price'=>$cart_item["price"]);
        }
    }

通过添加结果

foreach ($_SESSION["cart"] as $cart_item)
{
echo $cart_item["price"];
$subtotal = ($cart_item["price"]*$cart_item["qty"]);
$total = ($total + $subtotal);
}
echo $total;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM