我有一个PHP,可以访问不存储任何cookie的机器人。可以从_POST变量恢复会话ID。我的理解是,在从会话ID恢复会话后,$ _SESSION在这种情况下无法访问会话变量,因为cookie被禁用。
准确地说,会话由用户启动。这个PHP页面只会收到来自bot的一个POST请求 - 用户的会话ID作为参数传递。我需要“恢复”此会话并检查用户会话中存储的内容。
机器人丢弃发送给它的任何信息。
还有其他方法可以检索会话变量吗?
答案 0 :(得分:2)
是的,有办法。利用INI设置session.use_trans_sid
(将其设置为“1”)将向所有输出的URL附加包含会话ID的查询字符串,从而无需使用cookie。
答案 1 :(得分:0)
很多人建议使用session_id(...) - 由于某种原因,这不适用于我的设置。相反,我的解决方案是读取会话文件并使用session_decode(...)填充$ _SESSION变量,然后通过$ _SESSION访问变量。