这个需要用程序递归处理
$dept_tree=[];$deptid = 19;
while($deptid>0){
//假设你的数据库查询是这个函数,根据条件直接查询一条记录返回
$dept = getone('department',['id'=>$deptid]);
//防止数据丢失出错
if(empty($dept))break;
array_unshift($dept_tree,$dept);
$deptid = $dept['dep_parentid'];
//如果需要防止数据错乱出现递归,这里可以判断一下
if(in_array($deptid,array_column($dept_tree,'id') !== false){
//说明职位关系乱了,有死循环
break;
}
}
可以把这段代码封装成一个函数使用。这里就不论从哪一级开始查询了,总是能把该职位及其上级全部查询出来,按顺序放进数组里
$dept_tree 类似这样
array(0=>array(
'id'=>1,
'dep_parentid'=>0,
'dep_name'=>'顶级',
),
1=>array(
'id'=>2,
'dep_parentid'=>1,
'dep_name'=>'国灿金融',
),
2=>array(
'id'=>4,
'dep_parentid'=>2,
'dep_name'=>'招聘部',
),
3=>array(
'id'=>19,
'dep_parentid'=>4,
'dep_name'=>'经理助理',
),
)
第一题主要连接数据库,
第二打开连接
第三执行查询
第四判断返回结果
题主可以到w3school上查看具体教程
考虑到不清楚题主安装的环境,暂不贴出代码了。
祝好运,望采纳。
啊,明白了,我图方便就简写了,没按照规范,你就自己规范写吧
$cnt = select count(`id`) as `num` from `tablename` //这是取得数据库内的数据数量
$datas = select `id`, `picname`,`picpath` from `tablename`
两种啊,第一种
foreach ( $datas as $data )
{
$del = "delete from `tablename` where `id`={$data['id']}";
@unlike( "{$data['picpath']}" );//这里取决于你存的是相对还是绝对路径
echo("名称:$data['picname']");//显示文件名称
echo("
以上就是关于php查询mysql数据库中所有的四级数据以及第四级数据对应的第三级和第二级的名称字段怎么查全部的内容,包括:php查询mysql数据库中所有的四级数据以及第四级数据对应的第三级和第二级的名称字段怎么查、php怎样查询数据库(mysql)信息、php显示mysql所有数据库表中信息等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)