“动态”显示下拉菜单?

时间:2014-01-10 11:40:32

标签: javascript php jquery

我想根据用户的角色显示下面的下拉菜单:

<nav id="topNav">
 <ul>
  <li><a href="#">Applications</a>
   <ul>
    <li><a href="app1.php">App1</a></li>
    <li><a href="app2.php">App2</a></li>
    <li class="last"><a href="app3.php">App3</a></li>
   </ul>
  <li><a href="#">Corporate</a>
   <ul>
    <li><a href="corporate1.php">Corporate1</a></li>
    <li><a href="corporate2.php">Corporate2</a></li>
    <li class="last"><a href="corporate3.php">Corporate3</a></li>
   </ul>        
  </li>
  <li class="last"><a href="#">I.T.</a>
   <ul>
    <li><a href="IT1.php">IT 1</a>
    <li class="last"><a href="IT2.php">IT 2</a></li>
   </ul>   
  </li>      
 </ul>
</nav>

在我的数据库中,我有一个包含字段ID,电子邮件和角色的表。 我的应用程序将首先检查用户是否应该进行身份验证,然后检查用户的角色(Staff / Agent)以显示下拉菜单的不同内容。代理不需要查看所有项目。

目前我正在使用简单的“If else”语句来执行此操作。

<?php
If($checkrole == "Staff") {?>
   <nav>
      display staff items
   </nav>
<?php}?>
<?else {?>
   <nav>
      display agent items
   </nav>
<?php } ?>

是否有任何javascript或php函数可以让我更动态地显示这些菜单项?如果我将来有更多的角色,让我们说10个角色,我当前的方法不是一个很好的选择,有点静态或硬编码。谁能给我一些例子或帮助?感谢

1 个答案:

答案 0 :(得分:0)

在数据库中创建一个表格,并为每个菜单项提供唯一的ID,并添加一个表格,您可以使用其唯一的菜单ID定义您的角色。然后在PHP页面中创建一个多维数组,如1 => 'home', 2 => 'anotherPage'。从数据库中获取数据并使用foreach循环遍历它们。

表'roles'=&gt;字段:'role',field =&gt; “许可”值为'agent','1 | 2 | 3'

在您的PHP文件中:

  • 获取数据
  • 爆炸数据(爆炸('|',数组);
  • multidimenional array =&gt; 1 =&gt; '家'等。
  • 循环播放爆炸数据
祝你好运!