一个比较有难度的问题,请高手们帮忙,顶者有分~~

wxf0104 2005-04-08 03:09:30
有一个无限级产品类别目录树,一个顶结点有N个子结点,而每个子结点又可能有N个子结点,而每个结点中都可能有N个产品……
如何才能在得到最顶级目录ID的后能将该结点的所有子结点中的产品记录全部取出(不管是子类中的还是孙类中的),并且还要按产品ID自动排列?

我现在能将所有产品记录取出,但无法完成排序,它总是先排最末结点中的,然后再依次向上排。

我的想法是能不能将这些记录取出后,不会结点的层次,只按产品记录的ID排序。

谁有成功的案例或好的想法请告诉我呀~~
...全文
74 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
wxf0104 2005-04-08
  • 打赏
  • 举报
回复
还有,有什么办法将function getid()函数中的某个字符出输出到end function函数外呢?
wxf0104 2005-04-08
  • 打赏
  • 举报
回复
to hfkj(海风(在不停的努力))

分别属于不同子类的产品记录都能取到,但排序却是先从最底结点排起的,有什么办法让记录只安产品表中的产品ID排呢?
hfkj 2005-04-08
  • 打赏
  • 举报
回复
function getSort(i) '该函数获取类别下的所有子类,符合一般搜索习惯
dim rs,sql
set rs=server.createObject("adodb.recordset")
sql="select * from productSort where fatherID="&i
rs.open sql,conn,1,1
do while not rs.eof
strSort=strSort&","&rs("id") '&rs("name")
call getSort(rs("id"))
rs.movenext
loop
end function
raas 2005-04-08
  • 打赏
  • 举报
回复
up
wanglh100 2005-04-08
  • 打赏
  • 举报
回复
得到最顶级目录ID可以用递归函数,一直查找到没有下一级目录则返回这一级,并输出这一级的产品。

如果按产品记录排序,则要先取产品,后搜索类目根,这里你要在产品数据表中另设一ParentID。这样的资源耗费很高,不推荐。如果可以的话,先将ID读出存入数组再排序。

28,406

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧