【发布时间】:2010-08-25 07:03:30
【问题描述】:
我有一个 facebook 登录系统,似乎工作正常,但如果用户已登录,我想重定向到主页。所以这是我页面的顶部
<?php
session_start();
if(!empty($_SESSION)){
header("Location: home.php");
}
但这会被忽略,它会像 $_SESSION 为空一样运行登录脚本,即使我在主页上打印 Session 数组并且它总是显示它有值,而且脚本的其余部分无论如何都会分配会话值。即使我将其更改为if (empty($_SESSION)) 或在其后添加else { die()},它也会完全忽略它。
现在,如果我添加任何内容以使用 print_r($_SESSION) 或回显特定值来打印会话,即使我将其放在 if 语句之外,它似乎也意识到 $_SESSION 有一个值并进行重定向。我可以把它永久地放在那里,因为它永远不会出现......但我宁愿弄清楚为什么它现在不起作用。
【问题讨论】:
-
你少了一个括号。是这个问题吗?
-
@Merlyn Morgan-Graham,它在解释中被正确引用,如果他错过了代码中的括号,它应该会引发解析错误。我假设这是一个错字并已修复。
标签: php session redirect if-statement