问题描述
大家好,我需要帮助。我已经将 admindek 模板与 Codeigniter 3 集成,我想从我的数据库中的 table_menu 中获取菜单,但我不知道如何..我试过但它不起作用。 Soeey 我的英语不好:) .
这是我的Tabel_menu 数据库:
id | judul_menu | 链接 | is_main_menu |
---|---|---|---|
1 | 仪表板 mds | Dashboard_mds | 0 |
2 | 访问 mds | visit_mds | 0 |
3 | 大师 | # | 0 |
4 | 用户 | 用户 | 3 |
5 | 删除图片 | 删除图片 | 3 |
6 | 数据库 | 数据库 | 3 |
这里是 admindek 模板的原始导航脚本:
<nav class="pcoded-navbar">
<div class="nav-list">
<div class="pcoded-inner-navbar main-menu">
<div class="pcoded-navigation-label">Navigation</div>
<ul class="pcoded-item pcoded-left-item">
<!--- I GUESS HERE'S THE CODE START FOR MAIN MENU WITH SUBMENU --->
<li class="pcoded-hasmenu active pcoded-trigger">
<a href="javascript:void(0)" class="waves-effect waves-dark">
<span class="pcoded-micon"><i class="feather icon-home"></i></span>
<span class="pcoded-mtext">Dashboard</span>
</a>
<!--- I GUESS HERE'S THE CODE START FOR SUBMENU --->
<ul class="pcoded-submenu">
<li class="active">
<a href="index.html" class="waves-effect waves-dark">
<span class="pcoded-mtext">Default</span>
</a>
</li>
<li class="">
<a href="dashboard-crm.html" class="waves-effect waves-dark">
<span class="pcoded-mtext">CRM</span>
</a>
</li>
<li class="">
<a href="dashboard-analytics.html" class="waves-effect waves-dark">
<span class="pcoded-mtext">Analytics</span>
<span class="pcoded-badge label label-info ">NEW</span>
</a>
</li>
</ul><!--- END OF SUBMENU SCRIPT --->
</li><!--- END OF MAIN MENU SCRIPT --->
<!--- HERE'S CODE FOR ONLY MAIN MENU WITH NO SUBMENU --->
<li class="breadcrumb-item">
<a href="#!">Forms Wizard</a>
</li><!--- END OF ONLY MAIN MENU WITH NO SUBMENU --->
</ul>
</div>
</div>
</nav>
我试过这样但它不起作用..
<ul class="pcoded-item pcoded-left-item">
<?PHP
$main_menu = $this->db->get_where('tabel_menu',array('is_main_menu' => 0));
foreach ($main_menu->result() as $main) {
// Query looking for submenu
$sub_menu = $this->db->get_where('tabel_menu',array('is_main_menu' => $main->id));
// checking is there submenu or not
if ($sub_menu->num_rows() > 0) {
// main menu dengan sub menu
echo '<li class="pcoded-hasmenu pcoded-trigger">'
.anchor($main->link,'<span class="pcoded-micon"><i class="feather icon-home"></i></span><span class="pcoded-mtext">' .$main->judul_menu. "</span>");
echo "<ul class='pcoded-submenu'><li class=''>";
foreach ($sub_menu->result() as $sub) {
echo "<li>". anchor($main->judul_menu,'</li>');
echo"</ul></li>";}
}else{
echo '<li class="breadcrumb-item">'. anchor($main->judul_menu,'</li>');
}
}?>
</ul>
</div>
解决方法
在将 php 代码放入其中之前,您应该小心标记。您应该知道何时必须在 HTML 标记之后关闭它。如果不 。循环不会像你期望的那样运行..
试试这个兄弟,希望对你有帮助..
<ul class="pcoded-item pcoded-left-item">
<?php $main_menu = $this->db->get_where('tabel_menu',array('is_main_menu' => 0));
foreach ($main_menu->result() as $main) {
// Query untuk mencari data sub menu
$sub_menu = $this->db->get_where('tabel_menu',array('is_main_menu' => $main->id));
// periksa apakah ada sub menu
if ($sub_menu->num_rows() > 0) {
// main menu dengan sub menu
echo "<li class='pcoded-hasmenu'>"
.anchor($main->link,"<span class='pcoded-micon'><i class='feather icon-home'></i></span>
<span class='pcoded-mtext'>" .$main->judul_menu. "</span>");
echo "<ul class='pcoded-submenu'>";
foreach ($sub_menu->result() as $sub) {
echo "<li class=''>". anchor($sub->link,'<span class="pcoded-mtext">'. $sub->judul_menu.'</span></li>');}
echo"</ul></li>";
}else{
echo '<li class="">'.anchor($main->link,'<span class="pcoded-micon"><i class="feather icon-edit"></i></span><span class="pcoded-mtext"> '.$main->judul_menu.'</li>');
}
} ?>
</ul>