编程语言
首页 > 编程语言> > PHP会话变量不在页面之间保存

PHP会话变量不在页面之间保存

作者:互联网

我知道这可能是一个重复的问题,但我似乎无法找到我的具体问题的答案.

我有3个PHP文件. signin.php获取用户数据并将其传递给signin_auth.php.

signin.php然后在成功登录后重定向到mytoolkit.php.

signin_auth.php在PHP脚本的最后使用以下代码:

<?
session_start();

$_SESSION['sessionID'] = $id;
$_SESSION['time'] = time();

header ("Location: mytoolkit.php");
exit;

?>

然后,用户被重定向到mytoolkit.php,它使用以下代码:

<?

session_start();

if (!isset($_SESSION['sessionID'])) {

    header('Location: signin.php?message=4');
        exit;

}

$inactive = 5400;
$session_life = time() - $_SESSION['time'];

if ($session_life > $inactive) { 

   session_destroy(); 
   header("Location: signin.php?message=5"); 
   exit;

}

?>

会话变量没有存储,mytoolkit.php一直将我重定向到signin.php?message = 4

可能是一个愚蠢的错误.我一直在看它太久了.

更新 –

所以我有几台服务器.两者都在iPage上.我把整个文件夹移到了一个不同的服务器上(abc.com/toolkit现在被复制到xyz.com/toolkit)该应用程序在xyz.com上完美运行…它是第一个给我带来问题的服务器.

两者都运行在同一个托管公司.我不知道该怎么做.

解决方法:

我终于想通了……这是我在iPage服务器上的php.ini文件的问题.出于某种原因,他们将其设定为

session.save_path = "/var/php_sessions"

它应该是我的文档根目录.这不是他们第一次搞砸了.

标签:php,session-variables
来源: https://codeday.me/bug/20190831/1779516.html