这是我的表结构
require_once('../model/DBConfig.php');
$ob=new Connection();
menus
====
menu_id menu_name menu_hyper parent_id
1 Master Settings # 0
2 Role # 0
3 Add Role add_role.php 2
4 Staff add_staff.php 1
menu_permission
===========
id staff_id permission
1 1 1,4,2,3
2 2 2,3
<ul class="nav side-menu">
<?php
$selquery=$ob->showDataall("select * from menu_permission where staff_id='".$_SESSION['user_id']."'");
foreach($selquery as $nquery)
{
foreach(explode(",",$nquery['permission']) as $mnu)
{
$mnquery=$ob->showDataall("select * from menus where menu_id='".$mnu."' and parent_id='0' and delet='0'");
foreach($mnquery as $value)
{
echo '<li><a href="'.$value['menu_hyper'].'"><i class="fa fa-bars"></i>' .$value['menu_name']. '</a></li>';
}
}
}
?>
</ul>
结果是
主设置
警告:为G:''examplep''htdocs''live''Billing Suryas''include''pages''menu_left_bar.php中的foreach()提供的参数无效
角色
警告:为第44行的G:''examplep''htdocs''live''Billing Suryas''include''pages''menu_left_bar.php中的foreach()提供的参数无效
这是我的功能
public function showDataall($result)
{
$q = $this->conn->prepare($result) or die("failed!");
$q->execute();
while ($r = $q->fetch(PDO::FETCH_ASSOC))
{
$data[] = $r;
}
return $data;
}
您需要使用require_once('path/to/class');
包含类,然后使用$ob = new className
创建对象替换包含类的文件的路径和类的名称。如果这还不能解决问题,那么值得尝试
print_r($selquery);
查看阵列或的内容
var_dump($selquery);
检查它是否真的是一个数组。
您还在一个SQL查询中拼错了delete
,并且数字不喜欢被"引号"包围