+ -
当前位置:首页 → 问答吧 → PHP无限分类 不知道问题出现在那里了

PHP无限分类 不知道问题出现在那里了

时间:2011-08-29

来源:互联网

PHP code
     function catatree($parentid=0){
global $r;
echo '<ul>';
foreach($r AS $key=>$value){
if($parentid == $value["parentid"]){
?>
    <li><div class="ul_info"><?php echo $value['pagename'];?></div>
        <?php if($value["subcatas"]>0){
 catatree($value['id']);
}?>
      </li>
    <?php
}
}
unset($parentid);
echo '</ul>';
unset($value);
}


相关图片:

其实在二级分类里面是有产品1-2的。不知道哪里出错了 没有显示 直接查找自己的子类 然后就没有了

作者: nananjoy   发布时间: 2011-08-29

如果不大的话把$r一并打印出来吧

作者: dream1206   发布时间: 2011-08-29

PHP code
Array
(
    [0] => Array
        (
            [id] => 79
            [rootid] => 74
            [parentid] => 78
            [subcatas] => 1
            [pagename] => 产品1-1-1-1
            [identity] => p1_1_1_1
        )
 
    [1] => Array
        (
            [id] => 80
            [rootid] => 74
            [parentid] => 78
            [subcatas] => 3
            [pagename] => 产品1-1-1-2
            [identity] => p1_1_1_2
        )
 
    [2] => Array
        (
            [id] => 81
            [rootid] => 74
            [parentid] => 80
            [subcatas] => 0
            [pagename] => 产品1-1-1-2-1
            [identity] => p1_1_1_2_1
        )
 
    [3] => Array
        (
            [id] => 83
            [rootid] => 74
            [parentid] => 78
            [subcatas] => 0
            [pagename] => 产品1-1-1-3
            [identity] => p1_1_1_3
        )
 
    [4] => Array
        (
            [id] => 84
            [rootid] => 74
            [parentid] => 80
            [subcatas] => 0
            [pagename] => gdsgdsf
            [identity] => dsfdsfsd
        )
 
    [5] => Array
        (
            [id] => 85
            [rootid] => 74
            [parentid] => 80
            [subcatas] => 0
            [pagename] => fdhfghdfgdfg
            [identity] => dfgdfgsgsdf
        )
 
    [6] => Array
        (
            [id] => 86
            [rootid] => 74
            [parentid] => 78
            [subcatas] => 0
            [pagename] => fdhdfgdfgdfgdfgdfgdf
            [identity] => dfgdfgdfgdfgdfgdf
        )
 
    [7] => Array
        (
            [id] => 87
            [rootid] => 74
            [parentid] => 79
            [subcatas] => 0
            [pagename] => dfgdfgfdgdfgdfgd
            [identity] => dfgdfgdf76
        )
 
    [8] => Array
        (
            [id] => 74
            [rootid] => 0
            [parentid] => 0
            [subcatas] => 2
            [pagename] => 产品1
            [identity] => p1
        )
 
    [9] => Array
        (
            [id] => 76
            [rootid] => 74
            [parentid] => 74
            [subcatas] => 1
            [pagename] => 产品1-1
            [identity] => p1-1
        )
 
    [10] => Array
        (
            [id] => 78
            [rootid] => 74
            [parentid] => 76
            [subcatas] => 4
            [pagename] => 产品1-1-1
            [identity] => p1_1_1
        )
 
    [11] => Array
        (
            [id] => 77
            [rootid] => 74
            [parentid] => 74
            [subcatas] => 0
            [pagename] => 产品1-2
            [identity] => p1_2
        )
 
)

作者: nananjoy   发布时间: 2011-08-29

我猜吧,这个程序只处理数组中键值为1的值,没看到你有对id ++方面的处理
因此一直是
$value[1]
$value[1][1]
$value[1][1][1]
直到底层

作者: dream1206   发布时间: 2011-08-29

你数据源估计有问题

作者: PIGer920   发布时间: 2011-08-29