如何在Laravel中跟踪购物车表的sessionID

莫氏

我正在为我的项目使用php laravel 5.2。我想用数据库表(表名是cart)设计购物车。cart表的列名称为session_id,用于确定每个用户的cart。

问题是:

  1. 当用户登录的会话ID发生更改时,我将失去该用户的购物车(以及sessionId更改的其他条件)。
  2. 当会话过期的购物车仍然存在于数据库中并且也不再使用时,如何解决这个问题并删除这些购物车?

或任何其他使用数据库设计购物车的想法?

博格丹

确实没有理由将会话ID用作购物车所有者的标识符。处理购物车背后的逻辑非常简单,它等同于以下内容:

  • 当未登录的用户(我们称其为guest)访问您的网站时,Laravel会自动创建一个会话。
  • 如果该来宾用户向购物车中添加了东西,则添加到购物车中的商品/产品将存储在会话中。没有理由将来宾的购物车信息存储在数据库中,因为该会话是短暂的,仅当来宾在您的网站上处于活动状态时才需要。一旦该来宾用户离开该站点(即浏览器关闭或会话终止),您将无法(实际上)识别该用户是否回来(因此,使用的术语是guest)。如果您想允许访客下订单,则可以使用会话购物车信息下订单(访客仍然不需要数据库)。
  • cart当您与登录注册用户打交道时,才将购物车信息存储在数据库(您的表)中才有意义在这种情况下,将购物车商品链接到用户的标识符为,因为用户只能拥有一个购物车。因此,表可以很简单:user_idcart
+---------+------------+
| user_id | product_id |
+---------+------------+
  • 存储user_idandproduct_id实际上实际上是处理购物车项目所需的全部,因为它只是一个列表,该列表引用的用户的详细信息存储在users表中以及产品的存储的详细信息在products表中。

当然,当来宾用户将一些项目添加到购物车(此时已存储在会话中)时,如果该来宾决定在会话购物车中有东西时决定登录,则添加(更准确地说是同步)可能是有意义的登录过程成功后,这些项目将与数据库一起使用。

因此,如果用户自上次登录以来已经在数据库购物车中拥有一些产品,那么当前会话购物车中的新产品将被添加到旧产品中。尽管您是要同步商品还是完全覆盖它们以仅保留新购物车商品,这是您的选择。


因此,遵循上述准则,无需再从数据库中删除购物车商品,因为数据库中将永远只有与已注册用户链接的购物车商品,这些用户需要停留在此以便下次用户登录时可用。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在Laravel中跟踪购物车表的sessionID

来自分类Dev

如何在购物应用中添加购物车功能?

来自分类Dev

如何在购物车更新时更新购物车中的其他属性?

来自分类Dev

如何在shopify ios sdk中打印购物车物品,删除购物车物品?

来自分类Dev

Laravel在线购物车

来自分类Dev

如何使Woocommerce购物车表具有响应性?

来自分类Dev

如何更改购物车Laravel中的数量?

来自分类Dev

如何在Magento购物车中使用特殊公式

来自分类Dev

如何在Woocommerce的页面顶部添加购物车按钮?

来自分类Dev

如何在购物车总额中添加折扣?

来自分类Dev

Rails:如何在购物车中添加“删除商品”?

来自分类Dev

PHP如何在PayPal购物车中使用IPN?

来自分类Dev

如何在Prestashop 1.6中显示购物车总额

来自分类Dev

如何在opencart的结帐购物车中获取类别?

来自分类Dev

如何在购物车中添加其他物品?

来自分类Dev

如何在Vue中增加/减少购物车计数

来自分类Dev

如何在React中更改单个购物车数量?

来自分类Dev

如何在Codeigniter中创建购物车弹出窗口

来自分类Dev

如何在Wordpress / WooCommerce中显示购物车信息

来自分类Dev

如何在购物车总额中添加折扣?

来自分类Dev

如何在导航栏中添加购物车图片?

来自分类Dev

如何在店面woocommerce中更改柜台购物车?

来自分类Dev

如何在javascript中制作购物车

来自分类Dev

如何在购物车中显示店铺名称?

来自分类Dev

如何在点击时从购物车中删除项目?

来自分类Dev

如何跟踪/跟踪用户从移动网站到非移动网站中的购物车

来自分类Dev

Javascript数组/对象/哈希表可跟踪购物车的可用性

来自分类Dev

如何在购物车页面中添加/更新自定义购物车项目数据

来自分类Dev

如何在迷你购物车图标上提供页面链接以查看购物车和结帐

Related 相关文章

  1. 1

    如何在Laravel中跟踪购物车表的sessionID

  2. 2

    如何在购物应用中添加购物车功能?

  3. 3

    如何在购物车更新时更新购物车中的其他属性?

  4. 4

    如何在shopify ios sdk中打印购物车物品,删除购物车物品?

  5. 5

    Laravel在线购物车

  6. 6

    如何使Woocommerce购物车表具有响应性?

  7. 7

    如何更改购物车Laravel中的数量?

  8. 8

    如何在Magento购物车中使用特殊公式

  9. 9

    如何在Woocommerce的页面顶部添加购物车按钮?

  10. 10

    如何在购物车总额中添加折扣?

  11. 11

    Rails:如何在购物车中添加“删除商品”?

  12. 12

    PHP如何在PayPal购物车中使用IPN?

  13. 13

    如何在Prestashop 1.6中显示购物车总额

  14. 14

    如何在opencart的结帐购物车中获取类别?

  15. 15

    如何在购物车中添加其他物品?

  16. 16

    如何在Vue中增加/减少购物车计数

  17. 17

    如何在React中更改单个购物车数量?

  18. 18

    如何在Codeigniter中创建购物车弹出窗口

  19. 19

    如何在Wordpress / WooCommerce中显示购物车信息

  20. 20

    如何在购物车总额中添加折扣?

  21. 21

    如何在导航栏中添加购物车图片?

  22. 22

    如何在店面woocommerce中更改柜台购物车?

  23. 23

    如何在javascript中制作购物车

  24. 24

    如何在购物车中显示店铺名称?

  25. 25

    如何在点击时从购物车中删除项目?

  26. 26

    如何跟踪/跟踪用户从移动网站到非移动网站中的购物车

  27. 27

    Javascript数组/对象/哈希表可跟踪购物车的可用性

  28. 28

    如何在购物车页面中添加/更新自定义购物车项目数据

  29. 29

    如何在迷你购物车图标上提供页面链接以查看购物车和结帐

热门标签

归档