求一个无限级栏目程序
求一个无限级栏目程序? 问题点数:50、回复次数:9Top
1 楼ximyma(新民码)回复于 2005-09-14 16:43:35 得分 5
能不能说具体点.Top
2 楼RoseKnife(花满楼)回复于 2005-09-14 16:44:39 得分 10
教个无限分类的办法给你,你自己写
建一表 [table]
字段
id 自动编号
parentId 父ID
mychar 分类名
-------一级---------------
id parentid mychar
1 0 大类一
2 0 大类二
3 0 大类三
.............
-------二级---------------
id parentid mychar
4 1 大类一的第一个分类
5 1 大类二的第一个分类
6 2 大类三的第一个分类
........
-------三级---------------
id parentid mychar
7 4 大类一的第一个分类第一小类
8 4 大类一的第一个分类第二小类
...............
明白了吧,一直从父继承
这样就可无限分类了Top
3 楼net205(人不可以无耻到这种地步)回复于 2005-09-14 16:45:37 得分 10
用递归,,,
方便,好使,,
但如果层次太多的话,效率不行。。。
关注,,,看大家的意见。。Top
4 楼jamila8(曾)回复于 2005-09-14 16:56:51 得分 0
支持,顶Top
5 楼cqvip(每天进步1%)回复于 2005-09-14 17:29:42 得分 0
RoseKnife(阿楚)
能不能给个具体的例子Top
6 楼cqvip(每天进步1%)回复于 2005-09-14 18:05:03 得分 0
求简单例子Top
7 楼RoseKnife(花满楼)回复于 2005-09-14 21:48:59 得分 10
id parentid mychar
1 0 大类一
2 0 大类二
3 0 大类三
4 1 大类一的第一个分类
5 1 大类二的第一个分类
6 2 大类三的第一个分类
7 4 大类一的第一个分类第一小类
8 4 大类一的第一个分类第二小类
..............
瞧,就这样就可以了,你写个代码很简单的事啊
Top
8 楼zhaolj1983(小小)回复于 2005-09-15 08:47:49 得分 5
你在CSDN上搜索一下~!
n多啊 `!Top
9 楼zj135(zj135)回复于 2005-09-15 09:14:14 得分 10
'---------------------------------------------------
' 无限级分类
'---------------------------------------------------
Function Sort(Selec)
Set Rsc = Conn.Execute("Select * From WebClass Where ClassNum = " & Selec)
Do While Not Rsc.Eof
Set Rst = Conn.Execute("Select * From WebClass Where ClassId = " & Id)
If ClassNum = 0 Then
ClassNumy = Id
Else
ClassNumy = Rst("ClassNum")
End If
Rst.Close
Set Rst = Nothing
If Id = "" Or Id = "0" Then
Opsyn = "none"
Else
If Rsc("ClassId") = Cint(ClassNumy) Then
Opsyn = "block"
Else
Opsyn = "none"
End If
End If
bEof = Conn.Execute("Select * From WebClass Where ClassNum = " & Rsc("ClassId")).Eof
If bEof Then
Sort = Sort & vbCrlf & String(II,vbTab) & "cebmenu.addNode('" & Rsc("ClassName") & "','" & Rsc("ClassId") & "')"
Else
Sort = Sort & vbCrlf & String(II,vbTab) & "cebmenu.addFolder('" & Rsc("ClassName") & "','" & Rsc("ClassId") & "','" & Opsyn & "',false)"
End If
II = II+1
Sort = Sort & Sort(Rsc("ClassId"))
II = II-1
If Not bEof Then Sort = Sort & vbCrlf & String(II,vbTab) & "cebmenu.endFolder()"
Rsc.Movenext
Loop
Rsc.Close
Set Rsc = Nothing
End FunctionTop




