【问题标题】:$_GET before session_start(), to retrieve session name$_GET 在 session_start() 之前,检索会话名称
【发布时间】:2015-05-22 15:02:03
【问题描述】:

我正在尝试通过 url 将会话名称传递给页面,并使用 $_GET 检索它,然后设置会话名称,然后我可以启动正确的会话。

但是我得到了错误,以及一个空白的 sessionName..

例子:

$sessionName = $_GET['sessionName'];
session_name($sessionName);
session_start($sessionName);

知道为什么这不起作用吗?如果我取出 session_start 并回显 sessionName,它会正常运行并回显会话名称。

【问题讨论】:

  • 这似乎很有可能被会话劫持...
  • 这不是最好的主意。既然$_SESSION是一个超全局的,为什么要在url中传入呢?

标签: php session


【解决方案1】:

对我很好:

$_GET['sessionName'] = 'MYSESSION';
$sessionName = $_GET['sessionName'];
session_name($sessionName);
session_start($sessionName);
echo 'Session name: '.session_name().'<br>Session id: '.session_id();

输出:

Session name: MYSESSION
Session id: rtf3pjftivccsbbduplqcgk1j0

【讨论】:

    猜你喜欢
    • 2014-06-09
    • 2011-06-05
    • 1970-01-01
    • 1970-01-01
    • 2012-08-01
    • 1970-01-01
    • 2015-07-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多