2010-05-25 45 views
0

请给我一个关于如何根据登录人员显示页面中的元素的想法。例如,用户或管理员。 我在想是这样的,但我得到一个解析错误,我该怎么缺少这个代码?:如何根据登录的用户更改页面中的元素

编辑:

<?php 

session_start(); 

if (!(isset($_SESSION['loginAdmin']) && $_SESSION['loginAdmin'] != '')) { 
header ("Location: loginam.php"); 
} 

else if (!(isset($_SESSION['loginAdmin']) && $_SESSION['loginAdmin'] =='')) { 
               include('head2.php'); 
                } 


else if (!(isset($_SESSION['login']) && $_SESSION['login'] != '')) { 
header ("Location: login.php"); 
} 

else if (!(isset($_SESSION['login']) && $_SESSION['login'] =='')) { 
              include('head3.php'); 
                }  

?>  

请帮帮忙,有没有错误,但它不能正常工作正常。每当我尝试访问我拥有此代码的页面时。并以用户身份登录。它重定向到loginam.php(管理员将登录的页面)。但是,当我以管理员身份登录时,没有任何问题。它正常工作。我该怎么办?

+0

如果你想用一个解析错误帮助,那么它通常是一个好主意,包括实际的错误消息:) – Chris 2010-05-25 10:02:49

回答

2

使用

if (condition) 
{ 

} 
else if (condition) { 

} 

也只是为了让事情变得更简单..你可以试试..

function is_admin() { 

if(isset($_SESSION['loginAdmin']) && $_SESSION['loginAdmin']) 
    return true; 
} else { 
    return false; 
} 
} 

,然后检查

if(is_admin()) { 
///admin block 
} else { 
//admin login 
} 



if(is_user()) { 
///user block 
} else { 
//user login 
} 
2

if else无效。这是else if

除此之外,如果您将解析器错误与您的代码一起发布,将会有所帮助。

在打开它之前,您还没有关闭您的<?php声明。

+0

PHP有elseif所以没有其他需要如果:) – AntonioCS 2010-05-25 10:13:45

1

因为您的代码无效。

他是修剪代码:

<?php 
session_start(); 

if (!isset($_SESSION['loginAdmin']) && ($_SESSION['loginAdmin'] != '')) { 
    header ("Location: loginam.php"); 
} else { 
    include('head2.php'); 
} 

?> 
<?php 
if (!isset($_SESSION['login']) && ($_SESSION['login'] != '')) { 
    header ("Location: login.php"); 
} else { 
    include('head3.php'); 
} 
?>

支付很少注意的代码。

+0

每当其他条件不成立时,我该如何避免发布通知?我收到一个未定义的索引 – user225269 2010-05-25 10:32:41

+0

这已经被回答了十几次了。 http://stackoverflow.com/questions/2891042/setting-default-value-of-superglobal – 2010-05-25 10:39:58

相关问题