预期目标:
序号 大类别 小类别
1 A A1 A2 A3
2 B B1 B2
3 C C1 C2 C3
4 D D1表结构:
id cate_name pid
1 A 0
2 B 0
3 C 0
4 D 0
5 A1 1
6 A2 1
7 A3 1
8 B1 2
...问题:
如何写?
序号 大类别 小类别
1 A A1 A2 A3
2 B B1 B2
3 C C1 C2 C3
4 D D1表结构:
id cate_name pid
1 A 0
2 B 0
3 C 0
4 D 0
5 A1 1
6 A2 1
7 A3 1
8 B1 2
...问题:
如何写?
$cates = $conn->query("select * from category");for($i=0;$cate_parent=$conn->mysql_fetch_array($cate_parents); $i++){
echo "<b>".$cate_parent['cate_name']."</b><br/>";
for($j=0;$cate=$conn->mysql_fetch_array($cates); $j++){ //子循环 不能再次取值
if($cate['pid']==$cate_parent['id'])
echo $cate['cate_name']."<br/>";
}我是这么写的,但是子循环 自能遍历1次如何解决?
第二个mysql_fetch_array用了第一个句柄吧~~
{
$res[] = $row;
}$str = '';
foreach($res as $row1){
if( $row['pid'] == 0 )
$str.= $row1['id'].' '.$row1['cate_name'];
foreach($res as $row2){
if( $row1['id'] == $row2['pid'] )
$str.= $row['cate_name'].' ';
}
$str.= '<br />';
}
echo $str;没有测试过, 我写模板时是用这种思路, 方法是可行的
那个$cate_parents = $conn->query("select * from category");