主题:  循环显示数据之菜鸟小问问~~

icerain

职务:普通成员
等级:1
金币:1.0
发贴:249
注册:2003/6/13 3:09:56
#12003/6/23 19:40:19
请朋友们帮我看一下如下代码,显示一个数据库中所有的内容
我用的循环方法是不是不对啊?显示出来的内容行数和数据库中的一样
但是内容都是数据库中第一行的内容
<%
dim conn
dim connstr
connstr="DBQ="+server.mappath("mdb1.mdb")+";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};"
set conn=server.createobject("ADODB.CONNECTION")
conn.open connstr
Set rs = Server.CreateObject("ADODB.Recordset")
SQL="Select * From kehu" '数据库表的名子为KEHU
rs.Open sql,conn,1,3
%>
<%
dim name,xingming,city,tel,no1,time1 '表中的字段
name=rs("name")
xingming=rs("xingming")
city=Rs("city")
tel=Rs("tel")
no1=Rs("no1")
time1=Rs("time1")
%>


Untitled Document













<%
do while not rs.EOF
%>








<%
RS.MOVENEXT
loop
%>
名称 姓名 城市 电话 编号 时间
<%=name%> <%=xingming%> <%=city%> <%=tel%> <%=no1%> <%=time1%>


编辑历史:[这消息被icerainzd编辑过(编辑时间2003-06-23 19:43:29)]


{ 在指尖上绽放的花朵 }

职务:普通成员
等级:5
金币:14.0
发贴:3209
注册:2002/7/25 21:24:11
#22003/6/23 22:07:15
好眼熟的代码~
<%
dim conn
dim connstr
connstr="DBQ="+server.mappath("mdb1.mdb")+";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};"
set conn=server.createobject("ADODB.CONNECTION")
conn.open connstr
Set rs = Server.CreateObject("ADODB.Recordset")
SQL="Select * From kehu"      '数据库表的名子为KEHU
rs.Open sql,conn,1,3
%>


Untitled Document





  <%
  do while not rs.EOF
  dim name,xingming,city,tel,no1,time1    '表中的字段
  [color=red]name=rs("name")
  xingming=rs("xingming")
  city=Rs("city")
  tel=Rs("tel")
  no1=Rs("no1")
  time1=Rs("time1")[/color]
  %>
 
 <%
 RS.MOVENEXT
 loop
 [color=purple]Rs.close
 Set Rs = nothing[/color]
 %>
名称 姓名 城市 电话 编号 时间
<%=name%> <%=xingming%> <%=city%> <%=tel%> <%=no1%> <%=time1%>


红色的部分移动一下位置就好了。

至于紫色的部分,是我上个程序里面落下的。

现在补上好了~

编辑历史:[这消息被行者编辑过(编辑时间2003-06-23 22:08:30)]


icerain

职务:普通成员
等级:1
金币:1.0
发贴:249
注册:2003/6/13 3:09:56
#32003/6/23 22:52:30
哈哈~~~

行者大哥真有意思。

这是你给我的写的东西呀。
我现在啥也不会,别笑我啊,
我从开始自已ASP到现在才不到一个月
还没有人教我。天天拿着本破书看呀看呀。

上面的创建变量为什么在
do while not rs.EOF 之前就不行呢?



janlay

职务:管理员
等级:7
金币:28.0
发贴:7244
注册:2003/11/27 18:07:11
#42003/6/23 22:57:49
你出错的原因是并不在于定义变量是在do while之前或之后(放在前面更好),但是赋值语句的则需要每循环一次就执行一次。

显然你的程序基础还不够好,建议你看书的时候多思考,多练习:)



icerain

职务:普通成员
等级:1
金币:1.0
发贴:249
注册:2003/6/13 3:09:56
#52003/6/23 23:02:26
还是不行呀
错误类型:
Microsoft VBScript 运行时错误 (0x800A01A8)
/jianyin/look.asp, 第 29 行

do while not rs.EOF 就是这行



{ 在指尖上绽放的花朵 }

职务:普通成员
等级:5
金币:14.0
发贴:3209
注册:2002/7/25 21:24:11
#62003/6/24 1:54:51
 <%
   [color=red]dim name,xingming,city,tel,no1,time1    '表中的字段[/color]
   do while not rs.EOF
   name=rs("name")
   xingming=rs("xingming")
   city=Rs("city")
   tel=Rs("tel")
   no1=Rs("no1")
   time1=Rs("time1")
%>


改成这样,即把红色的部分移动循环试试看?

编辑历史:[这消息被行者编辑过(编辑时间2003-06-24 01:55:38)]