php如果session为空,php – $_SESSION在重新加载页面后为空

我的脚本test.php如下.当我单击Submit时,它会将其作为登录尝试进行处理,并成功设置$_SESSION变量.但是当我重新加载页面时(通过单击返回自身的链接),$_SESSION为空.

//test.php

session_start ();

function isUserLoggedIn (&$username)

{

$loggedIn = isset ($_SESSION['loggedin']);

if ($loggedIn)

$username = $_SESSION['user'];

else

$username = '';

return $loggedIn;

}

function processLogin ()

{

$_SESSION['loggedin'] = TRUE;

$_SESSION['user'] = "podunk";

session_write_close ();

}

echo '$_SESSION before we do anything..................: ';

print_r ($_SESSION);

echo "
";

if (isset($_POST['Submit'])) processLogin ();

$loggedIn = isUserLoggedIn ($username);

echo '$_SESSION after processing any login attempt: ';

print_r ($_SESSION);

echo "
";

if ($loggedIn)

echo "I AM LOGGED IN as $username!";

else

echo "I am logged out :(";

?>

Reload page

这是我在Linux apache2服务器上运行它的时候.当我在XAMPP上运行它时,$_SESSION仍然存在并且用户仍然登录.所以我猜它与php.ini有关……但也许我在这里犯了一个错误并且XAMPP正在原谅.

Linux服务器成功运行WordPress,所以它的设置不能太奇怪.刚刚进行了系统升级,如recommended. session.save_path存在并且今天有一些日期,所以我认为它有效,虽然它由root拥有而不是www-data,所以IDK如果这是一个问题.

这里有一些来自php信息的其他东西.关于那个cookie_path的IDK,所以我把它改成了session.save_path,FWIW所在的地方.

session.auto_start On On

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 0 0

session.cookie_path / /

session.cookie_secure Off Off

使用Chrome,Firefox和IE的行为是相同的.

TIA.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值