关于php、mysql,二叉树高手来帮忙,如何计算下面某个节点是否在某节点下面?
程序员文章站
2024-01-12 15:49:16
...
本帖最后由 kwdpx 于 2013-09-05 16:57:47 编辑
数据库member结构:
编号 上级ID 金额
id sh1 jine
1001 999 49
1002 1001 20
1003 1001 29
1004 1002 10
1005 1003 12
1006 1002 10
1007 1006 4
1008 1003 17
1013 1008 8
1015 1006 6
1021 1008 9
……
比如想知道ID:1021在不在1003下面?如果在就显示在,如果不在1003下面就显示不在:
if(){
echo "在";
}else{
echo "不在";
exit();
}
数据库member结构:
编号 上级ID 金额
id sh1 jine
1001 999 49
1002 1001 20
1003 1001 29
1004 1002 10
1005 1003 12
1006 1002 10
1007 1006 4
1008 1003 17
1013 1008 8
1015 1006 6
1021 1008 9
……
比如想知道ID:1021在不在1003下面?如果在就显示在,如果不在1003下面就显示不在:
if(){
echo "在";
}else{
echo "不在";
exit();
}
回复讨论(解决方案)
组织成二叉树的数据结构,很明显通过递归查询就可以查到.
组织成二叉树的数据结构,很明显通过递归查询就可以查到.
是的,但不会,麻烦帮写出代码,谢谢!
我来捡分了function show($a,$b){ $res = mysql_query("select sh1 from member where id=$a"); $row = mysql_fetch_row($res); if($row[0] == $b) return '在'; elseif($row[0] == NULL) return '不在'; else{ echo show($row[0],$b); }} echo show(1004,1001);echo '
';echo show(1004,10031);
上一篇: 关于中文验证码的问题,不解