编程php时,会话值在页面之间不持久的原因可能是什么?

编程php时,会话值在页面之间不持久的原因可能是什么?,php,session,Php,Session,我现在使用php会话来存储值并在页面之间传递 我做了一些基本的检查,比如确保在每个页面上调用session\u start(),并检查浏览器中是否设置了sessionid cookie,但该值在页面之间不是持久的 例如,我在一页上设置了$\u SESSION[“abc”]=“abc”,但当我在另一页上打印它时,它是空的 我注意到,在使用file存储cookie值时,没有在指定的路径上创建相应的cookie文件。未创建会话文件的原因可能是什么?服务器目录中有一个目录名“tmp”,用于保存会话临时文

我现在使用php会话来存储值并在页面之间传递

我做了一些基本的检查,比如确保在每个页面上调用
session\u start()
,并检查浏览器中是否设置了sessionid cookie,但该值在页面之间不是持久的

例如,我在一页上设置了
$\u SESSION[“abc”]=“abc”
,但当我在另一页上打印它时,它是空的


我注意到,在使用file存储cookie值时,没有在指定的路径上创建相应的cookie文件。未创建会话文件的原因可能是什么?

服务器目录中有一个目录名“tmp”,用于保存会话临时文件,请确保文件夹具有读写权限。

服务器目录中有一个目录名“tmp”,它用于保存会话临时文件,确保该文件夹具有读写权限。

这对您有用吗

<?php

session_start();

if (!isset($_SESSION['foo']))
    $_SESSION['foo'] = 'hello';

var_dump($_SESSION['foo']);

这对你有用吗

<?php

session_start();

if (!isset($_SESSION['foo']))
    $_SESSION['foo'] = 'hello';

var_dump($_SESSION['foo']);

您可以更改会话路径(如果允许)并设置0777权限 in.htaccess

php_value session.save_path  /home/your_domain.gr/public_html/tmp

此外,错误日志还有什么内容?

您可以更改会话路径(如果允许)并设置0777权限 in.htaccess

php_value session.save_path  /home/your_domain.gr/public_html/tmp

此外,错误日志中还有任何内容?

请注意,如果您在每页末尾销毁会话,请将其删除,因为当您在每页上销毁会话时,会话中没有持久性。此外,如果您使用的是某种注销代码,请销毁该部分代码上的会话。

请注意,如果您在每页末尾销毁会话,请将其删除,因为当您在每页上销毁会话时,会话中没有持久性。此外,如果您正在使用某种注销代码,请销毁该部分代码的会话。

您的帮助非常有价值!现在我可以确定问题出在我的代码上了,它将在很多部分执行退出(header($url))逻辑。这就是问题所在吗?请使用Firebug/Webkit Inspector查看响应HTTP头。会话cookie是否曾经更改?如果没有,则您正在销毁会话值。要找到答案,我想您只需要调试,使用调试器或place
var_dump($\u SESSION['foo'])检查代码四处查看以确定它何时丢失。您的帮助非常宝贵!现在我可以确定问题出在我的代码上了,它将在很多部分执行退出(header($url))逻辑。这就是问题所在吗?请使用Firebug/Webkit Inspector查看响应HTTP头。会话cookie是否曾经更改?如果没有,则您正在销毁会话值。要找到答案,我想您只需要调试,使用调试器或place
var_dump($\u SESSION['foo'])检查代码每一处,以确定它何时丢失。