//演示地址:该例子演示地址

      该例子演示了无限级分类的显示和添加.只用一个数据表实现记录无限级分类,关键是每条记录都记录了上一层类别的ID(parentid),然后通过一个递归函数来不断将类别显示出来.

*大类1
 └二级小类1
  └三级小类1
   └四级小类1
    └五级小类1
*大类2
 └二级小类2
*大类3

      数据库说明:数据库db.mdb,classTable表的结构:classid类别ID(自动增长) parentid 父级ID 默认为0 (0代表最高级) classname类别名,classdepth是为了记录类别的级数 ---------------------------------------------- 
| classid| classname| parentid | classdepth |
---------------------------------------------- 

主要代码: 

//先取出最高级(parentid=0)的分类 

<% 
set conn=server.createobject("adodb.connection")
     conn.open "Provider=Microsoft.Jet.Oledb.4.0;data source="&server.MapPath("db.mdb")
set rs1=server.createobject("adodb.recordset") 
sql1="select * from Classtable where parentid=0 order by classid" 
rs1.open sql1,conn,1,1 
if rs1.eof or rs1.bof then 
response.write"还没分类!" 
else 
while not rs1.eof 
id1=rs1("classid") 
name1=rs1("classname") 

response.write "*<a href='class.asp?
  end sub
  %>

相关文章: