当用户返回到我的网站,它试图从$_COOKIE
关联数组恢复他们的最后一次会议。它不按预期工作。我可以看看我的浏览器的cookie管理器,看看该饼干是有,但他们似乎没有被得到保存到$_SESSION
关联数组。
这本质上是当用户返回到我的网站程序流程:
foreach ( $_COOKIE as $name => $val )
{
$_SESSION[$name] = $val;
}
session_start();
...
$some_var = $_SESSION[$var_name];
我有东西坏了,或者我应该不会被覆盖PHPSESSID
?任何见解,以我在做什么错误,将不胜感激。谢谢。
你得到混淆会议和饼干。你并不需要把东西放到$_COOKIE
阵列。只需使用session_start()
,然后把东西放进$_SESSION
。 PHP会自动再管理会话/饼。
$_COOKIE
变量存储在用户的浏览器,所以它们不是安全的,可以由用户=>安全风险进行操作。
$_SESSION
变量只存储在服务器上。存储在cookie中的唯一的事情是一个SESSION_ID,所以$_SESSION
变量不能被操纵。
那有意义吗?
任何事情之前把session_start()
;这个函数初始化,您将$_SESSION
被访问会话数据。
不完全知道你想要什么,以实现与它所有的休息,但session_start()
首先是一个起点......