用于获取用户数据的 codeigniter 会话的替代方案
Alternative to codeigniter session for getting user data
我仍然是 codeigniter 的初学者,一直在零零碎碎地学习。
我使用 codeigniter 建立了一个网站,一些人用它来输入有关他们团队成员的信息和每个成员的进度。
在数据库中,每个用户都有其团队的 ID(团队在另一个 table 中定义)。每当每个用户登录时,我都会将他的团队 ID 保存为 $this->session->set_userdata.
的用户数据会话
每当他插入数据或需要显示有关他的团队的数据时,我都会从会话数据中获取 ID 并将其保存到一个变量中以在我的代码中使用。
我的问题是,尝试看看我正在做的事情是否健康、安全,看看我是否有办法在不使用会话的情况下做到这一点。
谢谢。
你做的完全没问题,而且其实很常见。请记住,会话并不意味着存储大量数据,但 ID 和基本信息就可以了。或多或少,会话使用 cookie 作为唯一标识符,指向存储数据的会话文件或数据库条目(如果您使用 CI 数据库会话)(参见:How secure are PHP sessions?). This data isn't accessible to the user, and can only be edited by server-side scripts, but sessions can be hijacked (see: Preventing session hijacking) but I wouldn't worry too much about that (see: How to prevent session hijacking in CodeIgniter 3,作者Narf wrote/co-wrote CI).
的会话库
长话短说,你做的事情很普通也很好。使用会话来满足您对基本内容的需求。您将始终需要一些唯一标识符来指向用户 ID,因此不要尝试避免会话。
我仍然是 codeigniter 的初学者,一直在零零碎碎地学习。
我使用 codeigniter 建立了一个网站,一些人用它来输入有关他们团队成员的信息和每个成员的进度。
在数据库中,每个用户都有其团队的 ID(团队在另一个 table 中定义)。每当每个用户登录时,我都会将他的团队 ID 保存为 $this->session->set_userdata.
的用户数据会话
每当他插入数据或需要显示有关他的团队的数据时,我都会从会话数据中获取 ID 并将其保存到一个变量中以在我的代码中使用。
我的问题是,尝试看看我正在做的事情是否健康、安全,看看我是否有办法在不使用会话的情况下做到这一点。
谢谢。
你做的完全没问题,而且其实很常见。请记住,会话并不意味着存储大量数据,但 ID 和基本信息就可以了。或多或少,会话使用 cookie 作为唯一标识符,指向存储数据的会话文件或数据库条目(如果您使用 CI 数据库会话)(参见:How secure are PHP sessions?). This data isn't accessible to the user, and can only be edited by server-side scripts, but sessions can be hijacked (see: Preventing session hijacking) but I wouldn't worry too much about that (see: How to prevent session hijacking in CodeIgniter 3,作者Narf wrote/co-wrote CI).
的会话库长话短说,你做的事情很普通也很好。使用会话来满足您对基本内容的需求。您将始终需要一些唯一标识符来指向用户 ID,因此不要尝试避免会话。