PHP Session 重定向到另一个页面后变量为空
PHP Session variable is empty after redirecting to another page
我正在创建 PHP
session、用户名和所有内容,但是当我使用 header(foo.php
) 重定向时,$_SESSION
变量显示为空,即使在使用 var_dump.
检查时在重定向之前它显示正确填充
首先我创建 session:
$_SESSION['loggedin'] = true;
$_SESSION['username'] = $username;
$_SESSION['start'] = time();
$_SESSION['expire'] = $_SESSION['start'] + (5 * 60);
echo "Bienvenido! " . $_SESSION['username'];
header('location:login-success.php');
exit();
在下一页我从页面顶部开始 session,上面没有 HTML,什么都没有:
<?php
session_start();
if(!isset($_SESSION['username'])){
echo "nope";
}
?>
输出总是"nope"。我在我的本地主机和远程主机上试过,几个浏览器,启用了 cookie。现在检查 var_dump 时 $_SESSION 显示为空。
session_start();
在您要以任何方式处理 SESSION
的每个页面上都需要(创建、更新、删除)。
所以将它添加到您的第一页,如下所示:-
<?php
session_start();
$_SESSION['loggedin'] = true;
$_SESSION['username'] = $username;
$_SESSION['start'] = time();
$_SESSION['expire'] = $_SESSION['start'] + (5 * 60);
echo "Bienvenido! " . $_SESSION['username'];
header('location:login-success.php');
exit();
我正在创建 PHP
session、用户名和所有内容,但是当我使用 header(foo.php
) 重定向时,$_SESSION
变量显示为空,即使在使用 var_dump.
首先我创建 session:
$_SESSION['loggedin'] = true;
$_SESSION['username'] = $username;
$_SESSION['start'] = time();
$_SESSION['expire'] = $_SESSION['start'] + (5 * 60);
echo "Bienvenido! " . $_SESSION['username'];
header('location:login-success.php');
exit();
在下一页我从页面顶部开始 session,上面没有 HTML,什么都没有:
<?php
session_start();
if(!isset($_SESSION['username'])){
echo "nope";
}
?>
输出总是"nope"。我在我的本地主机和远程主机上试过,几个浏览器,启用了 cookie。现在检查 var_dump 时 $_SESSION 显示为空。
session_start();
在您要以任何方式处理 SESSION
的每个页面上都需要(创建、更新、删除)。
所以将它添加到您的第一页,如下所示:-
<?php
session_start();
$_SESSION['loggedin'] = true;
$_SESSION['username'] = $username;
$_SESSION['start'] = time();
$_SESSION['expire'] = $_SESSION['start'] + (5 * 60);
echo "Bienvenido! " . $_SESSION['username'];
header('location:login-success.php');
exit();