将$ _POST值添加到购物车

时间:2012-04-07 16:08:04

标签: php shopping-cart cart

我曾经为我的网站下载过这个购物车脚本。 但现在我想在购物车中添加一个值,但无法弄清楚如何... :(

我有以下代码:

product.php

<form method="post" action="cart.php?action=update">
  <div class="quantity">
    <input type="text" name="qty<?php echo(''.$pinfo->id.''); ?>" value="1" /><span>&nbsp;&nbsp;&chi;</span>
  </div>
  <div class="add-quantity">
    <input class="nice-s" type="submit" name="product-quantity-submit" value="ORDER" />
  </div>
</form>

cart.php

$cart = $_SESSION['cust_cart'];

if(isset($_GET['action'])) {


$action = sanitize($_GET['action']);
switch ($action) {
    case 'add':
        if ($cart) {
            $cart .= ','.$_GET['id'];
        } else {
            $cart = $_GET['id'];
        }
        break;
    case 'delete':
        if ($cart) {
            $items = explode(',',$cart);
            $newcart = '';
            foreach ($items as $item) {
                if ($_GET['id'] != $item) {
                    if ($newcart != '') {
                        $newcart .= ','.$item;
                    } else {
                        $newcart = $item;
                    }
                }
            }
            $cart = $newcart;
        }
        break;
    case 'update':
/*  if ($cart) { */
        $newcart = '';
        foreach ($_POST as $key=>$value) {
            if (stristr($key,'qty')) {
                $id = str_replace('qty','',$key);
                $items = ($newcart != '') ? explode(',',$newcart) : explode(',',$cart);
                $newcart = '';
                foreach ($items as $item) {
                    if ($id != $item) {
                        if ($newcart != '') {
                            $newcart .= ','.$item;
                        } else {
                            $newcart = $item;
                        }
                    }
                }
                for ($i=1;$i<=$value;$i++) {
                    if ($newcart != '') {
                        $newcart .= ','.$id;
                    } else {
                        $newcart = $id;
                    }
                }
            }
        }
/*  }  */
    $cart = $newcart;
    break;
}

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

我想知道的是;如何通过product.php页面向购物车添加另一个值,并带有以下字段:

  <div class="size">
    <select name="size">
       <option value="16 INCH">16 INCH</option>
       <option value="19 INCH">19 INCH</option>
       <option value="22 INCH">22 INCH</option>
  </div>

提前完成!! B)

1 个答案:

答案 0 :(得分:0)

<select>块放在<form>标记内(并确保关闭<select>您的示例无法显示正确的语法。)和您应该可以通过访问变量$_POST["size"]来获取值。

我不知道这些数据做了什么,但我建议将每个选项的值更改为没有空格的内容。