PHP购物车没有登录- cookie vs会话vs两者


PHP Shopping cart without login - cookies vs sessions vs both?

这是一个基于php的网络商店,没有用户登录,因为所有的支付都是通过paypal处理的。我的问题是你们对购物车有什么建议——饼干,会议,还是两者都有?我不太关心购物车内容的寿命,我希望用户在提交订单之前能够点击并做一些事情。我倾向于会话,因为有些人可能仍然会在他们的机器上禁用cookie。

PHP会话使用带有会话id的cookie来跟踪用户。我会选择会话,因为它会为你处理所有的身份识别,让事情变得更容易、更透明。

也可以使用没有cookie的会话,它将在URL中传递会话id。在某些情况下,这可能是一种安全风险,但在您的情况下可能不是这样。

默认情况下,PHP在访问者的浏览器上设置一个cookie,以便知道要使用哪个会话id,因此最后这三个选项之间唯一的真正区别是在请求期间向服务器发送多少数据。

话虽这么说,你也可以使用会话没有cookie,确保添加?session_id={session_id();}到所有的内部链接,并在每个页面的开始:

 if (isset($_GET ['session_id'])
   session_id($_GET ['session_id'])
 session_start();

所以,建议使用会话