我有一个包含多个不同页面的项目。在我更新了我的PHP版本之前,它一直很好用。我不记得以前的版本,但目前的版本是:5.6.0beta4。
我可以成功登录并查看索引页面。我也可以从此处重定向到第二页,但是当我尝试重定向第三页(可能是索引页或任何其他寻呼机)时,我的所有会话值都被销毁。这就是我做事的方式;
登录;
session_start();
session_regenerate_id();
$_SESSION["user"] = "testuser";
$_SESSION["enter"] = true;
$_SESSION["id"] = 1;
header("location: index.php");
exit();
在其他页面中,我使用表单重定向;
<table border=0>
<form method=post action=second.php name=second>
<input type=submit value="2nd Page">
</form><br/>
<form method=post action=third.php name=third>
<input type=submit value="3rd Page">
</form>
</table>
我的所有页面都以session_start()和session_regenerate_id()开头。
欢迎任何帮助。我在互联网上做了一些研究,但所有的信息都是基于缺乏session_start()函数。我相信我的问题与php.ini有关。正如我所说,这个会话系统曾经完美地运作。这是我的会话值;
session.auto_start Off Off session.cache_expire 180 180 session.cache_limiter nocache nocache session.cookie_domain no value no value session.cookie_httponly Off Off session.cookie_lifetime 1440 1440 session.cookie_path / / session.cookie_secure Off Off session.entropy_file /dev/urandom /dev/urandom session.entropy_length 32 32 session.gc_divisor 1000 1000 session.gc_maxlifetime 1440 1440 session.gc_probability 1 1 session.hash_bits_per_character 5 5 session.hash_function 0 0 session.name PHPSESSID PHPSESSID session.referer_check no value no value session.save_handler files files session.save_path /var/lib/php5 /var/lib/php5 session.serialize_handler php php session.upload_progress.cleanup On On session.upload_progress.enabled On On session.upload_progress.freq 1% 1% session.upload_progress.min_freq 1 1 session.upload_progress.name PHP_SESSION_UPLOAD_PROGRESS PHP_SESSION_UPLOAD_PROGRESS session.upload_progress.prefix upload_progress_ upload_progress_ session.use_cookies On On session.use_only_cookies On On session.use_strict_mode Off Off session.use_trans_sid 0 0