购物车的实现可以使用多种方式,主流的有以下3种:
存储在用户游览器中:如使用cookie记录,也可以使用HTML5的本地存储等
存储在服务器中:存储在用户会话(session)中,用户在关闭游览器后存储信息会被销毁
存储在数据库中:可以存储在Mysql、Redis等数据库中
下面以Mysql存储用户的购物车信息,这样用户无论何时都可以看到自己的购物车历史记录。购物车表(goods_shopcar)设计见图
表设计中关键字段为uid和goods_id,可以记录那个用户加入了那个商品。num则记录了某个商品的加入的数量。
既然有购物车那么就会有支付功能,发起支付的时候需要发送一个唯一的订单号给微信服务器,这样在通知的时候才可以了解该修改那条订单记录。另外订单的核心就是记录那个用户买个那些商品,并提供支付等相关的状态管理。订单表(db_order)设计见图