求个PHP无限分类查询的代码,谢谢,能够直接用的
比如有这么一个分类idfidname1NULLname121name231name342name452name563name673name784name894name9若...
比如有这么一个分类
id fid name
1 NULL name1
2 1 name2
3 1 name3
4 2 name4
5 2 name5
6 3 name6
7 3 name7
8 4 name8
9 4 name9
若要打开name8的页面,要能显示面包屑导航name1>name2>name4>name8
跪求直接能用的代码,能用再加100分 展开
id fid name
1 NULL name1
2 1 name2
3 1 name3
4 2 name4
5 2 name5
6 3 name6
7 3 name7
8 4 name8
9 4 name9
若要打开name8的页面,要能显示面包屑导航name1>name2>name4>name8
跪求直接能用的代码,能用再加100分 展开
2个回答
展开全部
function trees($id)
{
global $connection;
$query = "SELECT * FROM test where id = '".$id."'";
$cursors = exequery($connection,$query); //数据库操作
$row = MySQL_fetch_array($cursors);
if(!empty($row['fid']))
{
$str .= trees($row['fid']).">";
$str .= $row['name'];
}else
$str = $row['name'];
return $str;
}
$result = trees(8);
echo $result;
// 输出 name1>name2>name4>name8
{
global $connection;
$query = "SELECT * FROM test where id = '".$id."'";
$cursors = exequery($connection,$query); //数据库操作
$row = MySQL_fetch_array($cursors);
if(!empty($row['fid']))
{
$str .= trees($row['fid']).">";
$str .= $row['name'];
}else
$str = $row['name'];
return $str;
}
$result = trees(8);
echo $result;
// 输出 name1>name2>name4>name8
更多追问追答
追问
高手啊,果然能用,帮我再解决一下导航上加链接吧
我的链接形式是/searchresults.php?searchid=$id
自己搞的头都大了,唉
追答
没看明白 链接形式 要怎么加 举个例子吧
展开全部
//无级分类排序的函数
function sorts($data,$pid = 0,$depth = 0,&$tree = array()){
foreach($data as $key => $val){
if($pid == $val['pid']){
$val['depth'] = $depth;
$tree[] = $val;
sorts($data,$val['id'],$depth+1,$tree);
}
}
return $tree;
}
//获取导航的函数
function psorts($data,$pid,&$tree = array()){
if($pid == 0) return;
foreach($data as $key => $val){
if($pid == $val['id']){
$tree[] = $val;
psorts($data,$val['pid'],$tree);
}
}
return $tree;
}
参数$data是你直接把所有分类数据从数据库直接读出来的数组
function sorts($data,$pid = 0,$depth = 0,&$tree = array()){
foreach($data as $key => $val){
if($pid == $val['pid']){
$val['depth'] = $depth;
$tree[] = $val;
sorts($data,$val['id'],$depth+1,$tree);
}
}
return $tree;
}
//获取导航的函数
function psorts($data,$pid,&$tree = array()){
if($pid == 0) return;
foreach($data as $key => $val){
if($pid == $val['id']){
$tree[] = $val;
psorts($data,$val['pid'],$tree);
}
}
return $tree;
}
参数$data是你直接把所有分类数据从数据库直接读出来的数组
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询