为两个定义的用户组显示我的内容

Displaying my content for two defined user groups

我有两个用户组 - Admin (A) 和 Moderator (M) - 以及一个导航菜单。一些链接仅对管理员可见,而其他链接则对双方都可见。这是我当前的代码:

<? if($_SESSION["LogedInAdminId"] && $_SESSION['AdminStatus']=="M") { ?>
    <ul>
        <li>...</li>
        <li>...</li>

        <? if($_SESSION["LogedInAdminId"] && $_SESSION['AdminStatus']=="A") { ?>
            <li>...</li>
            <li>...</li>
        <? { ?>

    </ul>
<? } ?>

目前,菜单只对版主显示,因为第一行:

<? if($_SESSION["LogedInAdminId"] && $_SESSION['AdminStatus']=="M") { ?>

所以我尝试将 Admin 组包括到如下所示:

<? if($_SESSION["LogedInAdminId"] && $_SESSION['AdminStatus']=="M" || "A") { ?>

但是,这会破坏代码并显示每个人的菜单 - 管理员、Mod、访客等。包含两个用户组的正确方法是什么?

你必须像这样组合你的用户组来检查 AdminStatus 是否是 M 或 (||) A

<? if($_SESSION["LogedInAdminId"] && ($_SESSION['AdminStatus']=="M" || $_SESSION['AdminStatus']=="A")) { ?>

首先,确保 session 已为所有使用会话的页面启动。

现在这个语法 || "A" 不正确。您需要添加一个新条件。

这是您需要做的,并括起第二个条件:

if( $_SESSION["LogedInAdminId"] 
    && ($_SESSION['AdminStatus']=="M" || $_SESSION['AdminStatus']=="A")
  )