php查询下两级员工数据 php怎么查询数据库
php查询mysql数据库中所有的四级数据以及第四级数据对应的第三级和第二级的名称字段怎么查?
这个需要用程序递归处理
成都创新互联从2013年成立,先为东洲等服务建站,东洲等地企业,进行企业商务咨询服务。为东洲企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。
$dept_tree=[];
$deptid = 19;
while($deptid0){
//假设你的数据库查询是这个函数,根据条件直接查询一条记录返回
$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'='经理助理',
),
)
php 怎样用循环得到一个用户下级及下下级,下下下级...的总人数
function num($num,$uid)
{
$result1=mysql_query("select * from user where lid='".$uid."'");
$n=mysql_num_rows($result1);
$f = $num + $n;
$t = num($f,$uid)
return $t;
}
用一个递归就可以了
PHP 如何通过会员ID来查询出这个会员的下级以及下下级
查询所有为0的一级会员
循环查询出来的一级会员并为每一个一级会员初始化一个计数量为0的变量
根据查询出来的一级会员ID查所有会员agentid等于一级会员ID的二级会员
得出每个一级会员下面的二级会员数量,并加在对应的计数量
根据查询出来的二级会员ID查所有会员agentid等于三级级会员ID的二级会员
得出每个二级级会员下面的三级会员数量,并加在对应的计数量
如果有四级可以继续循环下去,最后的计数量就是每个一级下面有多少个下属会员了
php无限查询下级查询问题
这个就要看你的数据库是怎么实现的。
我之前给一个人做个一个类似的会员推广提成的模块,就a推广出的a-1,a-2继续推广,得到a-1-1,a-1-2等等。
我的数据库设计思路如下:
用户表中有一个son这么一个字段,这个字段中存放名下所有会员的id,用分号隔开。
这个字段的维护:
比如a-1-1推广出了一个a-1-1-1,此新用户的id是12345,那么给a-1-1 a-1 a这个三个用户son字段内均添加12345这个id,删除一个用户做法一样。
有了这张表就能实现你要的效果。
查一个会员名下所有的会员,只需要读取该会员的son字段即可
查一个会员的上级 怎在数据库中所搜son字段,含有此会员id的都是他的上级会员。
当然,还有一个字段是标记此会员的直接上级会员,这样 一张表就能从任意会员得到整个会员推广树。
希望这个思路能帮到你。
当前题目:php查询下两级员工数据 php怎么查询数据库
分享网址:http://myzitong.com/article/doedces.html