function listNewsSort($aid,$parid) {
global $dbhost,$dbuser,$dbpasswd,$dbname,$newssort_table;
if(@mysql_connect($dbhost,$dbuser,$dbpasswd)):
if($parid!=NULl):
$type=" WHERE parid=".$parid;
else:
$type=" WHERE parid=0";
endif;
$list_newssort_sql="SELECT aid,name,parid FROM ".$newssort_table.$type." ORDER BY aid";
$list_newssort=mysql_db_query($dbname,$list_newssort_sql);
while($row=mysql_fetch_array($list_newssort)) {
if($row["parid"]!=0):
echo $row["name"]."<BR>\n";
else:
echo "&nbsp;&nbsp;&nbsp;&nbsp;".$row["name"]."<BR>\n";
endif;
listNewsSort(NULL,$row["aid"]);
}
else:
echo "数据库连接失败!请稍后再试!";
endif;
}

解决方案 »

  1.   

    if(@mysql_connect($dbhost,$dbuser,$dbpasswd)):
    //查找父分类
    $list1_sql="SELECT aid,name,parid FROM ".$newssort_table." WHERE parid=0 ORDER BY aid";
    $list1=mysql_db_query($dbname,$list1_sql);
    while($row1=mysql_fetch_array($list1)) {
    echo $row["name"]."<BR>\n";
    //查找子分类
    $list2_sql="SELECT aid,name,parid FROM ".$newssort_table." WHERE parid=".$row1["aid"]." ORDER BY aid";
    $list2=mysql_db_query($dbname,$list2_sql);
    while($row2=mysql_fetch_array($list2)) {
    echo "&nbsp;&nbsp;&nbsp;&nbsp;".$row2["name"];
    }
    }
    else:
    echo "数据库连接失败!请稍后再试!";
    endif;
      

  2.   

    leyan728(乐言)   朋友,这样子的话在while循环里面做查询不是很好啊,能不能先把整个查询结果放在数组里,然后输出啊?