1

我在 Windows/IIS 上运行 PHP。

我的会话变量似乎没有逐页保留。

这段代码…

//echos out the session variables in a nice format for inspection
echo "<p><pre>";
print_r($_SESSION);
echo "</pre></p>";

…输出空白值,像这样…

    大批  
    (  
        [s_firstvar] =>  
        [s_var2] =>  
        [s_第三] =>  
        [s_numberfour] =>  
        [s_youget] =>  
        [s_thepoint] =>  
        [] =>  
    )

我在论坛上找到建议...

我最近遇到了类似的问题(Win2000,IIS),结果表明 PHP 对存储会话数据的任何目录都没有写访问权限。你可能想看看这个。

你设置 session.save_path 了吗?

php.ini 的 session.save_path 的正确用法是什么?而且,这是我的问题吗?

4

2 回答 2

1

你能发布更多你的会话代码吗?一些基础知识:

  • 你开始你的会议了吗?( session_start())
  • 您是否检查过您的保存路径是否具有适当的权限(OP 中未提及)
  • session.save_path 实际上只是将保存会话的目录。如果您在共享服务上,最好将其设置为与默认临时目录不同的目录(因为您的会话也会与其他应用程序的会话混合,并可能导致更大的会话冲突机会)
  • 如果您正在更改会话配置(例如save_path,必须在调用session_start().
于 2008-10-07T21:20:40.393 回答
0

哎呀。我发现在赋值时我没有使用正确的语法:

不工作:

$_SESSION['$s_firstvar'] = 3;

是否有效:

$_SESSION['s_firstvar'] = 3;
于 2008-10-07T21:22:44.413 回答