您如何监控购物车放弃? 您是否会随着时间使用会话变量,如果已经过了某些秒,请将其视为放弃?
你会怎么做?
答案 0 :(得分:1)
我会使用cookie来存储标识符。然后,标识符在数据库中有一个包含其购物车内容的条目。
然后,您可以将Cookie设置为在您想要的小时数或数天内过期,比如10天。同时,您可以使用cron作业清除数据库中超过10天且被归类为过期的条目。
答案 1 :(得分:1)
我想像你说的那样使用Session系统。但是如果你想建立一个更专业的系统,在我看来,你必须在购物车的临时表中存储并让用户决定是否以及何时放下购物车。使用此临时表,您可以让用户随时注销和登录,并将项目保留在购物车中。
答案 2 :(得分:1)
我们使用redis作为购物车,我们使用密钥“user_id.cart”存储散列并设置过期时间(redis会在时间结束时自动删除数据)。结构如下:
user_id.cart = { item_id1: amount1, item_id2: amount2, ...}
答案 3 :(得分:0)
在最近的一个项目中,我们决定将购物车视为状态为“购物车”的订单。这使得从“购物车”过渡到加工或发货的订单非常容易。它还让我们深入了解放弃之前购物车中的内容。缺点是它在数据库中,它比Redis或其他一些基于内存的键值存储方法慢得多。我们还需要定期清理数据库以使表索引更小。