地区表取の样式问题~~~
现在数据库有3000多条记录
数据库结构是
id pid name ctype
1 0 中国 0
2 1 湖北 1
3 1 北京 1
4 2 武汉 2
5 2 武昌区 3
6 3 东城区 2
...........数据库说明:
id 数据id 这不说了吧
pid 是隶属级的id,比如湖北属于中国,那么湖北 pid=中国的id
name 是地区名
ctype 是等级,共有 0,1,2,3,4 0是国家 1是省份 2是城市 以此类推哦
读取数据 页面上打印出以下样式
<li>
<div>浙江</div>
<ol>
<li>
<div>杭州</div>
<ul>
<li>上城区< >
<li>下城区< >
<li>江干区< >
<li>西湖区< >
</ul>
</li>
<li>宁波< >
<li>绍兴< >
</ol>
</li>
这个怎么做到啊谢谢大家!!
现在数据库有3000多条记录
数据库结构是
id pid name ctype
1 0 中国 0
2 1 湖北 1
3 1 北京 1
4 2 武汉 2
5 2 武昌区 3
6 3 东城区 2
...........数据库说明:
id 数据id 这不说了吧
pid 是隶属级的id,比如湖北属于中国,那么湖北 pid=中国的id
name 是地区名
ctype 是等级,共有 0,1,2,3,4 0是国家 1是省份 2是城市 以此类推哦
读取数据 页面上打印出以下样式
<li>
<div>浙江</div>
<ol>
<li>
<div>杭州</div>
<ul>
<li>上城区< >
<li>下城区< >
<li>江干区< >
<li>西湖区< >
</ul>
</li>
<li>宁波< >
<li>绍兴< >
</ol>
</li>
这个怎么做到啊谢谢大家!!
global $mysql;
$sql="select category_id,category_pid,category_name from categorys";
if($category_pid==0){
$sql.=" where category_pid=0";
}else{
$sql.=" where category_pid=$category_pid";
}
$sql.=" order by category_id asc";
$mysql->query($sql);
if($mysql->get_rows()){
$result=$mysql->get_rows_array();
foreach($result as $v){
if($category_level==1){
$k=" ";
}else{
for($i=1;$i<=$category_level;$i++){
$k.=" ";
}
}
$category=$k."L".$category_level.":".$v["category_name"]."<br/>";
$category_pid=$v["category_id"];
echo $category;
get_category($category_pid,$category_level+1);
}
}
}调用:get_category(0),列出所有分类
这段代码的显示格式如下:L1:浙江
L2:杭州
L3:上城区
L3:下城区
L3:江干区
L3:西湖区
L2:宁波
L2:绍兴
L1:北京
L1:重庆
L2:渝北区
L3:两路镇
L4:空港开发区