繁体   English   中英

存储购物车的临时数据

[英]storing temp data for a shopping cart

我正在为我的网站制作购物车。

在会话中存储数据或在表中存储数据,哪个是更好的解决方案? 如果我将其存储在表中,我将如何以及何时删除表中的记录(即,不是由用户购买而是在表中)

我在特定情况下要做的就是将信息存储在CartOrder表中。 状态为'pending' 该过程完成后,我将信息插入到Order表中,并将CartOrder标记为完成(或删除)。 对我来说, CartOrder是购买的意图, Order是本质上的购买。

如果您不删除CartOrder,也可以稍后使用(请注意,即使您没有完成购买,亚马逊或其他站点也会如何维护您的最后一辆可用的购物车)。 跟踪有多少用户进入该网站,环顾四周,启动购物车但没有完成购买,这也很好。 用户喜欢这个。

优先事项。 两者都是合理的。 DB使您能够分析将要购买的商品或至少在排队时对客户的兴趣而言,该数据通常非常有效,因为它表示您对产品的浓厚兴趣,而且很多时候数据不会被删除,只是到期日期或至少一个会话ID作为表中的属性。

按照数据库方法,如果确实要删除,则很容易清除,您可以每天或每周在cron或其他计划的作业中运行以删除所有有效过期的记录。

取决于你想做什么。

常用的解决方案使用$_SESSION ,此解决方案易于实现,不会影响您网站的性能。

数据库会话非常好,因为它不涉及超时,并且可靠性更高。

我要说的是,如果您的价格标签比较昂贵,那么最好有一个数据库会话,因为用户通常在花费超过10,000美元时会花更多的时间思考。

对于普通产品,SESSION解决方案很好。

从Amazon获得提示,将数据存储在数据库中,永远不要删除它。

您从购物车中的物品获得多少价值? 存储购物车中的物品要花多少钱? 如果有人放弃了购物车,但一年后又回到您的网站,他们可能仍希望购物车中有这些物品。

暂无
暂无

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

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