Php 电子商务购物车-可以使用用户的ip代替基于cookie的id吗?

Php 电子商务购物车-可以使用用户的ip代替基于cookie的id吗?,php,session,cookies,e-commerce,Php,Session,Cookies,E Commerce,我正在开发一个电子商务网站。用户需要能够在登录前将产品添加到购物车中,也就是说,应要求用户仅在结账时登录 -->我知道这可以通过设置会话id并将其用于数据库中的cart表来实现 我的问题是: 我们可以使用用户的ip而不是使用cookie变量吗? ip将在购物车表中使用。购物车清理策略等。。与第一种情况相同 如果是的话,例如共享计算机可能面临的挑战是什么。 若否,原因为何 我提到的第一种方法是(使用cookies)吗?亚马逊等电子商务网站在用户登录前是如何管理购物车的 IP不是一个有用的标识符,

我正在开发一个电子商务网站。用户需要能够在登录前将产品添加到购物车中,也就是说,应要求用户仅在结账时登录

-->我知道这可以通过设置会话id并将其用于数据库中的cart表来实现

我的问题是:

  • 我们可以使用用户的ip而不是使用cookie变量吗? ip将在购物车表中使用。购物车清理策略等。。与第一种情况相同

  • 如果是的话,例如共享计算机可能面临的挑战是什么。 若否,原因为何

  • 我提到的第一种方法是(使用cookies)吗?亚马逊等电子商务网站在用户登录前是如何管理购物车的

    • IP不是一个有用的标识符,办公室里的许多人都会共享它,在移动网络上,通常有数千部手机都映射到同一IP。当一个用户切换无线网络但继续使用您的站点时,即使是一个用户也可能在许多不同的IP之间跳转

      当处理共享计算机时,你不能太担心。将cookie设置为在一段合理的时间(可能只有几个小时)后过期,以避免在浏览器中永久留下足迹。如果人们真的担心,他们可以随时使用私人浏览

      如果你想知道Amazon是如何做到这一点的,打开你的检查器,观察网络流量,看看分配了哪些cookie,它们会持续多长时间

      因此,简单的答案是使用一个会话,并计算出您希望它持续多长时间。我通常设置为48小时,如果没有登录,两个星期,如果登录,但它真的取决于你的市场


      我强烈建议您在从头开始编写自己的电子商务平台之前,先评估PHP或Ruby等现成的商务软件包。这通常比你一开始预期的要大得多,而且在处理钱的问题时有很多安全问题。

      你已经说过了,但是你可以创建一个随机的“令牌”,用于识别客户。有几种方法可以使用该令牌“维护状态”,最常见的是cookie。否则,在您的网站链接中,您必须附加令牌。然而,在结帐过程中,你不需要链接,你可以通过表单按钮来完成这一切,特别是因为你需要填写账单、发货等表单


      对于结账过程,考虑将令牌传递到隐藏表单字段中,然后避免最重要步骤的cookie。您还可以在订单记录表中使用该标记来关联购物车项目。令牌必须具有随机字符串,但也可以包含日期和时间等有用数据

      不,ip!=用户。艾米人可以共享一个IP。一个人可以使用多个IPSA会话是如此简单的使用,我不知道为什么你会考虑任何其他接近伟大的问题。我也有同样的疑问。@BittoBennichan最好的学习方法是以身作则,而不是在你不知道什么是一个好的电子商务平台的基础上学习第一原则。如果你已经使用过Magento、Spree、Shopify,也许还有半打其他的,那么你就可以自己写了。