主题:  这样的代码。我好困惑哦

小海豚

职务:普通成员
等级:1
金币:0.0
发贴:32
注册:2002/10/9 9:23:12
#12002/10/16 20:40:54
<%
    sql="select top 8 "
    sql=sql&"cncxddyy13579.id,cncxddyy13579.showname,cncxddyy13579.dateandtime,cncxddyy13579.hits,cncxddyy13579.hots,cncxddyy13579.classid,cncxddyy13579.Nclassid,Nclass.Nclass "
    sql=sql&" from cncxddyy13579,Nclass where cncxddyy13579.hots=1 and cncxddyy13579.Nclassid=Nclass.Nclassid "
    sql=sql&" order by cncxddyy13579.id desc"
    





rs.open sql,conn,1,1
    if rs.eof and rs.bof then
%>
没有推荐软件
<%else%>
<%do while not rs.eof%>


·', 700, 520, null, null, 'mywinname');" ><%=rs("showname")%>
<%
    rs.movenext
    loop
    end if
    rs.close
%>




以下我这样写为什么不可以。我好困惑,他的写的那么复杂究竟起什么作用
<%
    sql="select top 8 * from cncxddyy13579 where cncxddyy13579.hots=1 order by cncxddyy13579.id desc"
        



rs.open sql,conn,1,1
    if rs.eof and rs.bof then
%>
没有推荐软件
<%else%>
<%do while not rs.eof%>


·', 700, 520, null, null, 'mywinname');" ><%=rs("showname")%>
<%
    rs.movenext
    loop
    end if
    rs.close
%>



5D荣誉版主

职务:普通成员
等级:1
金币:10.0
发贴:271
注册:2002/10/16 16:19:02
#22002/10/17 8:28:18
不知道你的表结构怎么啊,不过你注意到没他是在两个表中查询的
cncxddyy13579和Nclass



zdygh2008

职务:普通成员
等级:1
金币:0.0
发贴:32
注册:2002/10/16 13:21:17
#32002/10/18 21:28:16
我发现一个错误,只执行前一部分搜索,而后一部分不搜响应。不管你
是输入关键字,还是不输入关键字。都显示出已有的信息。从:
<%
' 建立Connection 对象
Set conn = Server.CreateObject("ADODB.Connection")
Provider = "Provider=Microsoft.Jet.OLEDB.4.0;"
DBPath = "Data Source=" & Server.MapPath( "wz.mdb" )
sear="'%%"&SGender&"%%'"

' 连接数据库
conn.Open Provider & DBPath

Set rs = Server.CreateObject("ADODB.Recordset")
' 打开信息源,参数二为Connection对象
sql = "select * from addlink where addlink.username like"&sear
Rs.Open "addlink", conn, 2, 2
%>
<%do while NOT RS.EOF%>
"><%=rs("username")%>
<%Response.Write(" "&RS("Note")&"
")%>

<%
RS.MoveNext
loop

RS.Close
conn.close
%>         
上面这部分,不响应。仍然显示信息,但也不出错误提示。
请帮我看看错在哪?
不信浏览:http://www.wolu.org 的请不要输入任何字符,按搜索按钮方可明白错误。



line365

职务:普通成员
等级:1
金币:0.0
发贴:5
注册:2002/10/19 9:11:23
#42002/10/19 9:16:18
代码完整一点
猜测是变量没有真确传递/SEAR



line365

职务:普通成员
等级:1
金币:0.0
发贴:5
注册:2002/10/19 9:11:23
#52002/10/19 9:19:06
<%do while NOT RS.EOF and not rs.bof%>
"><%=rs("username")%>
<%Response.Write(" "&RS("Note")&"
")%>

<%
RS.MoveNext
loop

RS.Close
conn.close
%>



小海豚

职务:普通成员
等级:1
金币:0.0
发贴:32
注册:2002/10/9 9:23:12
#62002/10/20 10:46:58
'coon.asp的内容
<%
'on error resume next
    dim conn
    dim dbpath
    set conn=server.createobject("adodb.connection")
    DBPath = Server.MapPath("abcdefg.mdb")
    conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & DBPath
%>

'default.asp的内容
<%
dim rs
set rs = server.createobject("adodb.recordset")
%>

<%
     sql="select top 10 * from abcdefg order by hits desc"
     rs.open sql,conn,1,1
     if rs.eof and rs.bof then
%> 没有推荐游戏
<%else%>
<%do while not rs.eof%>

<%
     rs.movenext
     loop
     end if
     rs.close
%>

哪为高手能解释一下这段代码吗

疑问1:'on error resume next 什么作用
疑问2: adodb是什么作用
疑问3:rs.open sql,conn,1,1 什么作用
疑问4:rs.eof and rs.bof 分别是什么
疑问5:怎么又出来<%do while not rs.eof%>
疑问6:<%
     rs.movenext
     loop
     end if
     rs.close
%>
是什么意思啊

谢谢。帮助我们这些初学者



5D荣誉版主

职务:普通成员
等级:1
金币:10.0
发贴:271
注册:2002/10/16 16:19:02
#72002/10/21 8:04:30
1:表示出错后执行下一步
2:adodb中包含了对asp中常数的定义
3:根据查询语句sql打开对应记录集
4:表示是否找到记录
5:开始循环处理查询到的所有记录
6:rs.movenext记录集游标下移
循环语句loop跟while配对



小海豚

职务:普通成员
等级:1
金币:0.0
发贴:32
注册:2002/10/9 9:23:12
#82002/10/21 12:14:42
谢谢你,虽然我还是没听懂



5D荣誉版主

职务:普通成员
等级:1
金币:10.0
发贴:271
注册:2002/10/16 16:19:02
#92002/10/21 12:41:26
没关系啦,可以问我啊



小海豚

职务:普通成员
等级:1
金币:0.0
发贴:32
注册:2002/10/9 9:23:12
#102002/10/21 12:50:22
我想问问,有没有很详细介绍ASP语句的书!



小海豚

职务:普通成员
等级:1
金币:0.0
发贴:32
注册:2002/10/9 9:23:12
#112002/10/21 12:52:39
你能给我讲解一下。这段代码是怎么解释执行的吗



5D荣誉版主

职务:普通成员
等级:1
金币:10.0
发贴:271
注册:2002/10/16 16:19:02
#122002/10/21 12:58:31
asp语句啊?我只看过我们上学时的教科书
网上有很多教程的,下了看看

先是打开个记录集,开始循环,执行循环中的操作,最后关闭记录集



小海豚

职务:普通成员
等级:1
金币:0.0
发贴:32
注册:2002/10/9 9:23:12
#132002/10/21 13:15:58
rs.open sql,conn,1,1
coon,1,1 是什么意思,对应记录集是指哪些



5D荣誉版主

职务:普通成员
等级:1
金币:10.0
发贴:271
注册:2002/10/16 16:19:02
#142002/10/21 13:48:16
rs就是你要得到的记录集
第一个1表示打开记录集游标类型
第二个1表示打开记录集锁定类型



zdygh2008

职务:普通成员
等级:1
金币:0.0
发贴:32
注册:2002/10/16 13:21:17
#152002/10/21 13:48:45
它CONN,1,1
指的是:连接数据库1个,后一个1表示打开数据库只读。