asp 无限分类 数据读取
现有数据表class字段IDNameParentIDlevel自动编号类别名类别所属ID第N类如果我现在有ID为1名字为一级新闻ParentID为0(等于是一级栏目)le...
现有数据表class 字段
ID Name ParentID level
自动编号 类别名 类别所属ID 第N类
如果我现在有 ID为1 名字为 一级新闻 ParentID 为0(等于是一级栏目)level 为1
ID为2 名字为 二级新闻 ParentID 为1(等于属于这个1级栏目)level 为2
如何 读出他们 显示在页面上呢?
在线等回答!!
谢谢1楼的,我自己来测试下! 读出的是 1类栏目!
sql="select ParentID,name from tb_PClass where ParentID in (select id from tb_PClass where parentid=0)
这样写 可以读出 2类栏目,两个结合起来 可以使用不? 展开
ID Name ParentID level
自动编号 类别名 类别所属ID 第N类
如果我现在有 ID为1 名字为 一级新闻 ParentID 为0(等于是一级栏目)level 为1
ID为2 名字为 二级新闻 ParentID 为1(等于属于这个1级栏目)level 为2
如何 读出他们 显示在页面上呢?
在线等回答!!
谢谢1楼的,我自己来测试下! 读出的是 1类栏目!
sql="select ParentID,name from tb_PClass where ParentID in (select id from tb_PClass where parentid=0)
这样写 可以读出 2类栏目,两个结合起来 可以使用不? 展开
1个回答
展开全部
Set Rs = Server.CreatObject("Adodb.RecordSet")
Sql = "Select * From Class Where ParentID = 0"
Rs.Open Sql,Conn,1,1
While Not Rs.Eof
Response.Write Rs("Name")
ShowSubClass(Rs("ID"))
Rs.MoveNext
Wend
Rs.Close
Set Rs=Nothing
Function ShowSubClass(ClassID)
Set Rss = Server.CreatObject("Adodb.RecordSet")
Sql1 = "Select * From Class Where ParentID = "&ClassID&""
Rss.Open Sql1,Conn,1,1
While Not Rss.Eof
Response.Write Rss("Name")
ShowSubClass(Rss("ID"))
Rss.MoveNext
Wend
Rss.Close
Set Rss=Nothing
End Function
没有测试,原理就是使用归递调用自己循环执行,如果有子类就循环下去,如果没有就结束
Sql = "Select * From Class Where ParentID = 0"
Rs.Open Sql,Conn,1,1
While Not Rs.Eof
Response.Write Rs("Name")
ShowSubClass(Rs("ID"))
Rs.MoveNext
Wend
Rs.Close
Set Rs=Nothing
Function ShowSubClass(ClassID)
Set Rss = Server.CreatObject("Adodb.RecordSet")
Sql1 = "Select * From Class Where ParentID = "&ClassID&""
Rss.Open Sql1,Conn,1,1
While Not Rss.Eof
Response.Write Rss("Name")
ShowSubClass(Rss("ID"))
Rss.MoveNext
Wend
Rss.Close
Set Rss=Nothing
End Function
没有测试,原理就是使用归递调用自己循环执行,如果有子类就循环下去,如果没有就结束
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询