使用不同的访问级别显示不同的内容

时间:2014-11-18 15:20:49

标签: php mysql session session-variables

我有以下代码行,使用$_SESSION['MM_UserGroup']== 'userlevel'

中存储的已定义访问级别在身份验证时检查哪个用户已登录
<?php if ($_SESSION['MM_UserGroup'] =='j') {?>
            <li><a href="#" class="glyphicon glyphicon-ban-circle">year4</a></li>
            <li><a href="#" class="glyphicon glyphicon-ban-circle">year3</a></li>
            <li><a href="#" class="glyphicon glyphicon-ban-circle">year2</a></li>
            <li><a href="#" class="glyphicon glyphicon-ban-circle">year1</a></li>
          </ul>
          <?php } else { ?>
          <?php } ?>

我只想扩展用户组以包含其他组: 类似于:<?php if ($_SESSION['MM_UserGroup'] =='j, s, g, h') {?> 但它似乎不会引起任何错误,也不会起作用。

但是对于一个单独的小组来说,它就是:

 <?php if ($_SESSION['MM_UserGroup'] =='j') {?>
            <li><a href="#" class="glyphicon glyphicon-ban-circle">year4</a></li>
            <li><a href="#" class="glyphicon glyphicon-ban-circle">year3</a></li>
            <li><a href="#" class="glyphicon glyphicon-ban-circle">year2</a></li>
            <li><a href="#" class="glyphicon glyphicon-ban-circle">year1</a></li>
          </ul>
          <?php } else { ?>
          <?php } ?>

2 个答案:

答案 0 :(得分:0)

您可以使用||(或)运算符:

<?php if ($_SESSION['MM_UserGroup'] == 'j' || $_SESSION['MM_UserGroup'] == 's' || $_SESSION['MM_UserGroup'] == 'g' || $_SESSION['MM_UserGroup'] == 'h') {?>

答案 1 :(得分:0)

听起来您正在寻找运算符

<?php

    if ($_SESSION['MM_UserGroup'] =='j'
        ||  $_SESSION['MM_UserGroup'] =='s'
        ||  $_SESSION['MM_UserGroup'] =='g'
        ||  $_SESSION['MM_UserGroup'] =='l') {
?>
          (... Your HTML here...)
<?php

    }

如果您不想在其中添加任何内容,则不需要else块。此外,您无需打开和关闭每行的<?php?>标记。

如果你确实需要你的其他阻止,只需要

<?php 
    } else {
        // your code here
    }
?>

就足够了,也更容易阅读。