我已经在我的localhost.Lets中开发了两个购物车应用程序,比如sc1和sc2。我在一个特定浏览器的两个不同选项卡中打开了这两个站点。
我在购物车-1中添加了3个sc1项目,但当我尝试在cart-2中添加任何sc2项目时,它会将该项目与sc1的购物车-1中的项目一起提供。
我在这两个应用程序的index.php中启动了会话(session_start();)。如何解决这个问题?我知道使用session.cookie_path可以解决这个问题。我试过了,但是它不能解决我的proble.Is,有没有额外的步骤要遵循,或者有什么额外的功能要包含?
发布于 2013-03-05 18:22:44
在session_start()之前调用session_name("application name")。这设置用于标识会话的cookie的名称(默认值为"PHPSESSID")。
对每个应用程序使用不同的名称。
发布于 2013-03-05 18:22:12
是否在新会话中打开浏览器?对于IE => -按键、文件、新会话....
但是,对于您的应用程序,您可以更好地检查session_id...when session_id是否正确,然后您可以向购物车中添加项目,否则请离开。
发布于 2013-03-05 18:22:47
您在两个安装上使用相同的会话名称。在每次安装的基础上更改会话名称就可以了。
例如,如果在两者上都有一个名为cart的会话,那么您添加到sc1中的任何内容都将出现在sc2中,但商品将有所不同,因为存储在会话中的商品id将与不同数据库中的不同ID相匹配。这就是你所看到的。
最好的解决方案是在数据库设置表中存储一个会话名称,然后使用它在每个站点的基础上命名会话,然后它允许您在每个站点的基础上对其进行自定义。或者,您可以在config.s中使用定义
https://stackoverflow.com/questions/15221257
复制相似问题