注册 登录
编程论坛 ASP.NET技术论坛

求解。高手出来吧!关于ASP循环问题!万分感谢

cibaer 发布于 2012-12-18 18:59, 490 次点击
遇到一个比较麻烦的问题。


例如:

'=========================================读取用户资料
Set rs=Server.CreateObject("ADODB.RecordSet")
sql="select * from user where username='"&username&"'"
rs.Open sql,conn,1,3
tuijian=rs("tuijian")
'=========================================读取用户的推荐人资料
Set rs1=Server.CreateObject("ADODB.RecordSet")
sql="select * from user where tuijian='"&tuijian&"'"
rs1.Open sql,conn,1,3
tuijian1=rs1("tuijian")
'=========================================读取用户的推荐人的推荐人资料
Set rs2=Server.CreateObject("ADODB.RecordSet")
sql="select * from user where tuijian='"&tuijian1&"'"
rs2.Open sql,conn,1,3
tuijian2=rs2("tuijian")
'=========================================读取用户的推荐人的推荐人的推荐人资料
Set rs3=Server.CreateObject("ADODB.RecordSet")
sql="select * from user where tuijian='"&tuijian2&"'"
rs3.Open sql,conn,1,3
tuijian3=rs3("tuijian")
'=========================================读取用户的推荐人的推荐人的推荐人的推荐人资料
Set rs4=Server.CreateObject("ADODB.RecordSet")
sql="select * from user where tuijian='"&tuijian3&"'"
rs4.Open sql,conn,1,3


response.write(rs4("username"))

用ASP怎么才能计算以此类推下去。最高推荐人未知的情况,一直找到最高的那个推荐人的账号为止。高手请指导,给个思路。。万分感谢!
2 回复
#2
awl8052012-12-18 19:50
定义两个id,父id和本身id。我举个例子。
这个是一个表

节点名                 节点id                父id   
根节点                    1                   0
子节点1                   2                   1
子节点2                   3                   1
子节点1的子节点           4                   2
子节点2的子节点           5                   3
子节点1的子节点的子节点   6                   4
注意观察,每个节点都存有上一层节点的id,逆向查找,直到其父id为0就是跟节点。也就是你所需要的最高推荐人。
这里的0就是结束标志相当于字符串的\0
#3
g3308977782013-05-22 10:49
有空看看递归的使用,你就很容易解决了。
1