繁体   English   中英

购物车多种商品

[英]Shopping Cart Multiple atribute products

很久以前,我已经创建了一个可靠的多种产品购物车,现在我决定为产品添加多种属性(例如尺寸,颜色...)。

我的数据库是这样的:

产品:id ...

属性ID名称(颜色/大小)值(蓝色/灰色/ XXL)...

Product_attributes ID atribute_id product_id

我已经以这种方式在单个产品页面上添加了属性输入(正在运行)

if(the product has atributes on product_attributes table){
   while(there's product_attributes id){
        echo <select name=".$name.">
        while(there's atributes equal to product_attributes){
             echo <option value=".$id.">$value</option>
        }
        echo </select>
   }
}
<input type="number" name="qtd"> //quantity input
<input type="hidden" name="product_id" value="$product_id">
<input type="hidden" name="action" value="add">
<input submit>

在cart.php上,我有以下脚本

if(isset($_POST['action']) && $_POST['action'] == 'add'){
    $product= $_POST['product_id'];
    $qty= $_POST['qtd'];

    if(!empty($_SESSION['cart'][$product])){
        $qty= $qty+ $_SESSION['cart'][$product];

    }
    $_SESSION['cart'][$product] = $qty;
    header('location: cart');
}

我知道,并非所有产品都具有属性;我该如何使该脚本适应我拥有的新属性输入? 产品可以具有一个或多个属性; 根据产品数量和属性,将产品保存在不同的数组中(例如:产品:1,颜色:蓝色,尺寸:L产品数量:2 |产品:1,颜色:黑色,尺寸:l,数量:1)

有人可以帮助我解决这个难题吗? 我爱你的好心;)

我只给您一个想法,创建两个表:

一个用于属性的类型

属性

ID-名称值

1 - 大小 - 42

2- taglia-XXL

然后是带有属性和产品关联的表格

协会

ID-产品属性

autoincrement-1(例如id 1产品1)-2(属性)

具有该ID的产品具有taglia xxl,如果添加任何行将具有其他属性

暂无
暂无

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

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