如何用php创建下拉菜单?
问题描述:
本标题可能会让某人感到困惑,但我的目标是在PHP函数中创建一个下拉菜单并回显它。如何用php创建下拉菜单?
表INDEX_PAGES
id, name, href
----------------------------
1 login ?page=login
2 admin ?page=admin
3 projects ?page=projects
4 home ?page=home
表就知道了可以显示mainpages:了解我的问题有点......
我mainpages,名字都在顶部菜单中显示在顶部的菜单
表TOP_MENU
id, index_page
------------------
1 1
2 2
3 3
4 4
我使用函数将它们回显到我的topmenu。
结构:
<header>
<h1 class="header">Godhaze</h1>
<nav id="nav-vasak">
<ul>
<?php echo get_topnav(); ?>
</ul>
</nav>
</header>
功能:
function get_topnav(){
global $db;
$sql="SELECT i.name,i.href from index_pages i join top_menu t on t.index_page=i.id ";
foreach($db->query($sql) as $row) {
echo "<li><a href='".get_domain().$row['href']."'>".$row['name']."</a>";
//dropdownmenu
echo "</li>";
}
}
现在我有顶部菜单的名称和它的所有工作正常,但我想显示我在dropmenu鉴于第二页。
像:
<header>
<h1 class="header">Godhaze</h1>
<nav id="nav-vasak">
<ul>
<li><a>Login</a> //mainpage
<li><a>Action_log</a></li> //secondpage
</li>
</ul>
</nav>
</header>
表SECOND_PAGES
id, name, index_page_id, href
------------------------------------------------------------------
1 error_log 2 ?page=admin&secondpage=error_log
2 user_log 2 ?page=admin&secondpage=user_log
3 action_log 1 ?page=login&secondpage=action_log
4 test_log 3 ?page=projects&secondpage=test_log
知道secondpages可以在下拉顶部菜单中显示的表,index_page是外键index_pages和second_page是外部关键second_pages
表TOP_MENU_PAGES
id, index_page, second_page
-------------------------------
1 1 3
2 2 1
所以现在我的问题是..我怎样才能使这个功能,所以我可以显示在下拉菜单的第二页?
答
试试这个修改功能
function get_second_pages(){
global $db;
$sql="SELECT i.name,i.href,s.name as name2,s.href as href2,
from index_pages i
join top_menu t on t.index_page=i.id
join SECOND_PAGES s on t.second_page=s.id ";
foreach($db->query($sql) as $row) {
echo "<li><a href='".get_domain().$row['href']."'>".$row['name']."</a>";
echo "<li><a href='".get_domain().$row['href2']."'>".$row['name2']."</a>";
echo "</li>";
}
}
我的东西它会帮助你的。
你想要一个函数来检索关于'index_page_id'键的第二页数据吗? –
@BibhudattaSahoo是的 – Somepub
那么你可以做到这一点,因为你做主页面,这是什么问题? –