0

我对 PHP 开发很陌生。到目前为止,我在 cookie 中存储了一个哈希(用户 + 密码)以保持用户登录。现在我发现了 php 会话。

是否有人可以在没有访问服务器的情况下修改存储的值?

$_SESSION['username'] = 'test@test.com';
4

2 回答 2

6

不,没有服务器访问权限不能直接修改会话(直到你留下漏洞进行黑客攻击)

Session 是服务器(RAM 或 FileSystem)上的一个数组,它通过 cookie 映射到用户。用户只能在 cookie 中获取会话 ID。当用户返回时,PHP 获取该会话 ID 并恢复会话。

于 2012-09-03T13:36:32.580 回答
2

客户端永远不会更改变量$_SESSION。我还建议您不要将密码保存$_SESSION$_COOKIE. 您可以检查用户和密码是否正确,然后您可以创建$_SESSION['userID']or$_SESSION['user']然后您只需通过使用 isset 函数创建 if 语句来检查会话是否已创建,如下所示:

if(isset($_SESSION['user'])){
   // do something...
}
于 2012-09-03T13:54:31.197 回答