我有一个购物车,它在Sessions中存储每件商品的itemIds和数量,直到我们结帐。订单插入,同一订单中的多个项目
客户支付后,我继续将信息插入到我的ORDERS表中的数据库中。
我的问题是:我应该如何处理一个客户有多个项目的订单?多个数量很简单,因为我的ORDERS表有一个'数量'字段。但是,多个项目呢?建议什么? 我应该为同一个订单插入不同的每个项目的行吗?
目前我有这样的:
$query = "INSERT INTO orders (itemId, quantity, clientPrice, firstName, lastName, email, phoneNumber, address, city, zip)
VALUES (:itemId, :quantity, :clientPrice, :firstName, :lastName, :email, :phoneNumber, :address, :city, :zip)";
多个数量和多个项目有什么区别?对不起,我真的不明白。 – 2013-04-11 14:59:49
您应该有一个'orders'表和一个'order_items'表。将'item_id'存储在'order_items'表中是一个坏主意,因为当您为现有商品进行价格更改时,它会更改客户在订单中实际支付的价格。 – BenM 2013-04-11 15:00:01
简短的回答是:你不会在一张桌子上全部做完。您使用多个表。 – Crontab 2013-04-11 15:00:07