管理员视图仅导航栏PHP



我计划为用户&管理员与不同的内容。如果是用户,那么他们只会看到注销按钮。如果是管理员,他们会看到按钮&;usermanagement &;和";Logout"使用php。现在我没有设法确保php读取当前用户的状态。'roles' = 'Y'被认为是admin,我将其存储在mssql中。下面是我的代码。

<?php if( isset($_SESSION['username']) && !empty($_SESSION['username']))
{ ?>
<a class="right" href="logout.php">Log Out</a>
<?php if( isset($_SESSION['roles']) && $_SESSION['roles']===['Y']) ?>
<a class="right" href="userManagement.php">User Profile</a>
<?php }else{ ?>
<a class="right" href="login.php">Login</a>
<a class="right" href="register.php">Register</a>
<?php } ?>

任何帮助将非常感激,我一直在搜索和应用许多代码,因为过去4天,没有一个代码工作。

我不确定你是否想要这个

<?php if (isset($_SESSION['username']) && !empty($_SESSION['username'])) { ?>
<a class="right" href="logout.php">Log Out</a>
<?php if ($_SESSION['roles'] === "Y") {  ?>
<a class="right" href="userManagement.php">User Profile</a>
<?php }  ?>
<?php } else { ?>
<a class="right" href="login.php">Login</a>
<a class="right" href="register.php">Register</a>
<?php } ?>

要有条件地输出HTML代码,您需要从PHP回显它。这就是我认为你想要的。我保留了你的格式

<?php
if( isset($_SESSION['username']) && !empty($_SESSION['username']))
{echo '<a class="right" href="logout.php">Log Out</a>';}
if( isset($_SESSION['roles']) && $_SESSION['roles']===['Y'])
{echo '<a class="right" href="userManagement.php">User Profile</a>';}
else
{echo '<a class="right" href="login.php">Login</a>';
echo '<a class="right" href="register.php">Register</a>';}
?>

最新更新