在php codeigniter中显示父项下的子记录



我有一个包含以下字段的Tbl。我只能显示第一个级别,并且显示良好。但我想在各自的家长下显示每个家长的孩子详细信息。请提前帮我谢谢。

id pid  name
1   0   proc
2   0   prod
3   0   dash
4   3   dash-prod

这是我的模态代码

function get_all_access_list(){
$db = $this->connect_db();
$output =array();
$db->select('access_module_id,access_parent_module,access_module_name');
$db->from('access_permissions');
$db->where('access_parent_module =',0);
$query = $db->get();
if( $query->num_rows() > 0 ){
$output = $query->result();
}
return $output;
}

这是视图中的代码

<?php 
if( !empty($access_list) ){
foreach( $access_list AS $acces_name ){ ?>
<input type="checkbox" name="access_name[]" id="acces_name" value="<?php echo $acces_name->access_module_id; ?>">
<span class="label-text fa-lg"><?php echo $acces_name->access_module_name;?></span>
<?php 
}
}
?>

在MySQL查询方面,我们可以定义一个自定义排序参数。如果pid值为0,我们可以简单地使用id值进行排序;否则为CCD_ 3值。这是因为其他级别的pid值与父级的id值相同。

我们还将使用多级Order By,使用id进行二级排序。

你可以这样做:

SELECT 
t.id, 
t.name 
FROM 
your_table AS t 
ORDER BY 
CASE WHEN t.pid = 0 THEN t.id 
ELSE t.pid 
END
, t.id 

相关内容

  • 没有找到相关文章

最新更新