我试图了解如何正确实施购物车,基于保存带有唯一标识符的cookie来识别数据库中的用户购物车,无论用户是登录还是购物。我试着尽可能多地看一些例子,但我不能清楚地理解它。
到目前为止,这是我的方式:
[访客用户]
[登录用户]
这里是我遇到麻烦的地方:,以前的一切都很好,假设用户不仅决定在填写购物车后登录,那是我出错的地方。这就是我所拥有的:
如果他们选择在购物车满载后登录,我如何更好地处理注册用户购物车?我是否需要为访客用户和注册用户提供单独的表格,如果他们在购买购物车后登录,我如何将访客购物车列表转移到注册用户购物车?
答案 0 :(得分:0)
我认为您最好通过localStorage或cookie在本地存储每个订购商品(或整个购物车内容)。
你这样做,你在数据库上做了太多的请求。为什么?因为你假设一个cookie是可靠的,事实上,它不是。所以你的所有操作都使用" cookie ID"如果用户选择重置他的浏览器/删除他的cookie,则无所作为。
有很多方法可以销毁cookie,至少在localStorage中会更难。
我想说:在本地存储它,如果记录,则将本地保存的内容与数据库上的内容同步。但是,不要在数据库中存储未登记的用户购物车:最终你会以孤儿结束(由于某种原因不再存在cookie),而你却无法理解原因。