SESSION isset,重定向

时间:2014-01-15 06:17:43

标签: php redirect

这是userslist.php的代码。我把它放在这个页面的头部上面,所以如果点击这个链接,只有管理员可以进入过滤页面,这就是我有重定向的原因。

 session_start();

$loggedInfo['username'] = $_SESSION['username'];

if(
isset($loggedInfo['username']) && $loggedInfo['username']==="admin" &&
trim($loggedInfo['username']) != "guest"
)
{
header('Location: userslist.php');
}
else {
header('Location: ../index.php');
}

这是我的php脚本,我遇到了redirecting的问题。在header(location ...)当我将其更改为echo或false时,echo会正确返回值。但是当我放置一个重定向/位置时,它会说:

This webpage has a redirect loop

为什么? :(

2 个答案:

答案 0 :(得分:0)

您可能在所有页面中都包含此代码。因此,在userslist.php上,它也将重定向到userslist.php。这会导致永久重定向,这是一个重定向循环。

  

然而,如果没有看到您正在使用的所有代码,这个结论很难得到支持。

答案 1 :(得分:0)

将此代码放在userlist.php的顶部。尝试一下

<?php session_start();
$loggedInfo['username'] = $_SESSION['username'];
if(isset($loggedInfo['username']) && $loggedInfo['username']!="admin"){

header('Location: ../index.php');
exit();
}else if(isset($loggedInfo['username']) && $loggedInfo['username']=="admin"){


?>

你的页面代码是

<?php } ?>