主题:  请问为什么我用ASP制作网上实时查看留言板时显示不到?

Kingstar

职务:普通成员
等级:1
金币:0.0
发贴:15
#12005/11/10 15:24:59
代码是这样的:
<!--#include file=conn.asp-->
<%
Response.buffer=true
Response.Clear()
Response.Expires=0
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>读留言板</title>
</head>

<body>
<p align="center"><font size="5">查看留言板</font></p>
<%
if not Request.QueryString("id"="" then
strdeletesql="select*from bbs where id="&Request.QueryString("id"
Set rsdelete=Server.CreateObject("ADODB.Recordset"
rsdelete.open strdeletesql,conn,1,3
Set rsdelete=nothing
Response.redirect"readmessage.asp"
end if
%>
<%
Dim strsql,strdsn
strsql="select*from bbs where toname='"&Session("name"&"'"
set rs=server.createobject("adodb.recordset"
rs.open strsql,conn,1,3
if rs.recordcount = 0 then response.write("暂无留言!<br/>"
else
if rs.recordcount > 0 then
Response.Write"<center>你共有"&rs.recordcount&"条留言"
end if
end if
%>
<%
dim i
Response.Write"<table border=1 width=100%/><tr>"
for i=1 to rs.recordcount
Response.Write"<td width=27%/>"&rs("date"&" "&rs("time"&"</td>"
Response.Write"<td width=18%/>"&rs("name"&"</td>"
Response.Write"<td width=20%/>"&rs("email"&"</td>"
Response.Write"<td width=15%/><a href=return.asp?toname="&rs("name"
Response.Write">回复</a>"&" "
Response.Write"<a href=readmessage.asp?id="&rs("id"&">删除</a></td></tr>"
Response.Write"<tr><td colspan=5>"&rs("lyb"&"</td></tr>"
rs.movenext
next
Response.Write"</table>"

rs.close
set rs=nothing
%>
</body>
</html>
请问那里不对~每次提交表单后表里面有了信息但是就是显示时总是说"本页有0条留言"
那位高手可以帮我解决啊!



蓝鲸

职务:版主
等级:5
金币:42.1
发贴:2614
#22005/11/11 10:56:00
Session("name")
用Respnse.Write输出一下这个变量,看是否存在


非常大鱼

Kingstar

职务:普通成员
等级:1
金币:0.0
发贴:15
#32005/11/11 15:59:29
<%
<!--#include file=conn.asp-->
Dim strsql,strdsn
strsql="select*from bbs where name='"&Session("name"&"'"
set rs=server.createobject("adodb.recordset"
rs.open strsql,conn,1,3

do while not rs.eof
%><tr>
<td><%=rs("name"%></td>
<td><%=rs("toname"%></td>
<td><%=rs("content"%></td>
<td><%=rs("time"%></td>
</tr>
<%
rs.movenext
loop
%>
%>
我试了一个这样写~但是又出错了.提示:错误类型:
ADODB.Recordset (0x800A0BB9)
参数类型不正确,或不在可以接受的范围之内,或与其他参数冲突。
/readmessage12.asp, 第 6 行
我是用ACCESS做数据库的,是不是因为这个问题呢?我是初学者~请高手尽快救我!



Kingstar

职务:普通成员
等级:1
金币:0.0
发贴:15
#42005/11/11 16:04:55
还有一点很奇怪的~我可以对数据库进行写入~太是,就是没法读出在页面上~头都快爆了~
高手快救我啊~



缺缺

职务:管理员
等级:8
金币:41.0
发贴:9620
#52005/11/11 16:55:06
<!--#include file=conn.asp-->

<%

Dim strsql,strdsn
strsql="select * from bbs where name='"&Session("name")&"'"
set rs=server.createobject("adodb.recordset")
rs.open strsql,conn,1,3



Kingstar

职务:普通成员
等级:1
金币:0.0
发贴:15
#62005/11/11 17:52:35
谢谢楼上大哥~页面没出错了~太是还是显示不了~我把下面的用Response.write来输出~也不行~这到底是怎么回事~是不是系统问题呢?



蓝鲸

职务:版主
等级:5
金币:42.1
发贴:2614
#72005/11/12 2:16:00
name是专用词,应用[name]


非常大鱼

Kingstar

职务:普通成员
等级:1
金币:0.0
发贴:15
#82005/11/12 13:09:41
我改了~
<!--#include file=conn.asp-->
<%
Dim strsql,strdsn
strsql="select*from bbs where name='"&Session("[name]"&"'"
set rs=server.createobject("adodb.recordset"
rs.open strsql,conn,1,3

do while not rs.eof
%><tr>
<%
Response.Write "<td>"&rs("[name]"&"</td>"
Response.Write "<td>"&rs("toname"&"</td>"
Response.Write "<td>"&rs("content"&"</td>"
Response.Write "<td>"&rs("time"&"</td>"
Response.Write"</tr>"

rs.movenext
loop
%>
是这样改吗?可是一个都没显示啊~这是怎么回事?是不是我改得不对?



蓝鲸

职务:版主
等级:5
金币:42.1
发贴:2614
#92005/11/12 15:28:03
不是这样
strsql="select*from bbs where [name]='"&Session("[name]"&"'"


非常大鱼

Kingstar

职务:普通成员
等级:1
金币:0.0
发贴:15
#102005/11/12 16:44:58
我~~~~~晕~~~~请问数据库那里要改吗?



蓝鲸

职务:版主
等级:5
金币:42.1
发贴:2614
#112005/11/13 10:27:36
数据库不需要改,sql中不能直接使用保留字,就象编程中不能使用 if dim int作为变量是一个道理


非常大鱼