我将购物车的商品存储到会话数组中,但由于产品ID和数量存储在客户端,因此当客户想要时,我无法检查商品数量添加可用数量已添加到其他客户购物车的商品。
所以我在added_to_cart
表中添加了一个名为Products
的列,当产品/项目添加到客户会话购物车时,该列会递增。
现在,我希望在客户没有活动一小时后暂停会话,并通过检查存储在非活动状态(待超时)中的内容来减少added_to_cart
。 php会话
Products
-----------------------------------------
: p_id : available_qty : added_to_cart :
-----------------------------------------
: p-123 : 57 : 3 :
-----------------------------------------
: p-287 : 32 : 8 :
-----------------------------------------
1.当客户从未访问过该网站时(即不调用session_start()),是否可以这样做。如果是这样的话。
2.这是正确的建议解决方案吗?他们如何在亚马逊和易趣等大型在线存储中做到这一点?
答案 0 :(得分:1)
您应该在下订单/提交订单时进行最终数量检查,而不是在添加到购物车时。想想会发生什么,如果有人将您系统中的所有产品添加到购物车(只是为了好玩)..您的电子商务商店将售罄:)
所以应该像:
还有很多很好的女仆,免费的电子商务软件,如:Magento(http://magento.com/)
定时会话:
但如果你真的想做会话,你可以:
请记住,会话(相关的预留产品)应该很短(例如30分钟?)。