【问题标题】:Display different content using different access level使用不同的访问级别显示不同的内容
【发布时间】:2014-11-18 23:31:13
【问题描述】:

我有以下代码行,在身份验证时检查哪个用户使用存储在$_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 } ?>

我只想扩展用户组以包含其他组: 类似的东西:&lt;?php if ($_SESSION['MM_UserGroup'] =='j, s, g, h') {?&gt; 但它似乎没有抛出任何错误,也没有工作。

但对于单个组它有效,即:

 <?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 mysql session session-variables


    【解决方案1】:

    听起来您正在寻找 or 运算符

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

    如果你不想在里面放任何东西,else 块也不是必需的。此外,您无需为每一行打开和关闭 &lt;?php?&gt; 标记。

    如果你确实需要你的 else 块,只需拥有

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

    就足够了,而且更容易阅读。

    【讨论】:

    • 你刚刚帮助了一个准备好推动人类前进的人;您的代码行效果惊人。谢谢。
    【解决方案2】:

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

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

    【讨论】:

    • 为了像这样的if,我将从$_SESSION['MM_UserGroup'] 中创建一个$。不重要,但可能会使内容更短且更具可读性。
    • 同意它更清楚。但是思路还是一样的。
    • @daan 解析错误:语法错误,第 136 行 C:\xampp\htdocs\dashboard\index.php 中出现意外的“{”
    • @Daan 我也同意你的说法是正确的;斯蒂芬更清楚这两个想法都是基于 OR 运算符谢谢大家
    猜你喜欢
    • 2010-11-13
    • 1970-01-01
    • 2011-01-23
    • 1970-01-01
    • 2017-07-22
    • 2016-10-25
    • 1970-01-01
    • 1970-01-01
    • 2021-01-09
    相关资源
    最近更新 更多