我想转到主页作为当前登录用户的权限。 当我试图打开具有链接的页面时,它将转到主页。我需要对代码进行哪些更改
<body>
<a href="<?php home(); ?> ">Home</a>
</body
function home()
{
if($_SESSION['privillage']=="ADMIN")
{
header('location:admin_home.php');
}
elseif($_SESSION['privillage']=='SUPERVISOR')
{
header('location:home.php');
}
else
{
header('location:user_home.php');
}
}
答案 0 :(得分:5)
您的功能正在<a href="...">
中使用,因此显然应该 return
一个网址(您还需要echo
)
您当前的代码正在尝试立即重定向用户,但由于您已发送<a href="
,因此无效。
尝试:
function home() {
if($_SESSION['privillage'] == "ADMIN") return "admin_home.php";
if($_SESSION['privillage'] == "SUPERVISOR") return "home.php";
return "user_home.php";
}
答案 1 :(得分:1)
header('location
。您要做的只是根据特定条件更改href
。
function home()
{
if($_SESSION['privillage']=="ADMIN")
{
return 'admin_home.php';
}
elseif($_SESSION['privillage']=='SUPERVISOR')
{
return 'home.php';
}
else
{
return 'user_home.php';
}
}
为了便于阅读,您可以考虑使用PHP's switch statement
答案 2 :(得分:0)
可能是你必须将&#34; location&#34;的第一个字母大写。使用&#34;位置&#34;在标题中(&#39;位置:user_home.php&#39;); :)