我应该如何在会话上托管用户的ID?只是为了插入ID?我的意思是(例如):会话注入?
$_SESSION['id'] = 1;
有没有办法改变它由用户自己(作为cookie ..)?因为如果是这样,他可以更改为任何ID。
还有一个关于它的问题 - 我如何检查用户是否登录(使用会话)?我创建了一个会话:
$_SESSION['is_logged_in'] = true;
同样,不能在用户只需创建一个会话他的名字是“is_logged_in”和他的价值是真的吗?或者只是服务器有一个关于服务器的价值的控制权?
请参阅:[PHP会话修复/劫持](http://stackoverflow.com/questions/5081025/php-session-fixation-hijacking#5081453) –
它应该工作的方式是由SESSION控制和创建仅限服务器。所以不,用户不应该能够*创建一个他的名字是'is_logged_in'*的会话,并且它会以你描述的方式影响会话,除非你的SESSION方法有严重缺陷。 –
'$ _SESSION'中的值专门存储在服务器端。用户只收到一个包含其会话ID的PHPSESSID cookie。 PHP使用它在会话存储中查找数据。 –