对不起,这可能是一个初学者的问题。如果我使用$_SESSION
变量,服务器如何跟踪多个用户/引用它们,例如说约翰已经登录$_SESSION['username']="John"
系统如何引用彼得和詹姆斯,他们也已经登录,因为他们不能互相写$_SESSION['username']="Peter"
和$_SESSION['username']="James"
?
我可能在这里遗漏了一些简单的东西。
答案 0 :(得分:0)
@ user2976086
$ _ SESSION正是让用户与php服务器分开的原因。每次调用session_start时,php服务器都会创建一个新的客户端会话(如果尚未启动),这通常会导致在浏览器中创建名为PHPSESSID的cookie。在服务器端,php服务器为每个唯一的会话ID(存储在cookie中,每个浏览器只有一个)创建一个唯一的$ _SESSION数组。这就是为什么你只能用每个浏览器一个用户登录的原因(你可以使用firefox和chrome同时登录大多数站点的2个帐户,例如为每个浏览器创建一个cookie)。这就是为什么你不能覆盖" $ _SESSION ['用户名']与不同的用户,除非您在该浏览器窗口中注销导致调用session_destroy或删除包含当前用户的sessionid的cookie。