自己写的ASP 留言版程序,F5刷新老是写空数据库,将数据写空,对高手来说很简单把代码贴出望高手看一下.

自己写的ASP留言版程序,F5刷新老是写空数据库,将数据写空,对高手来说很简单把代码贴出望高手看一下.<html><body><tbale><tr><tdheight="... 自己写的ASP 留言版程序,F5刷新老是写空数据库,将数据写空,对高手来说很简单把代码贴出望高手看一下.
<html>
<body>

<tbale><tr><td height="50" align="center" style="font-size:12px;">留言列表:<br/>
<%
actions=trim(request("act"))
if actions = "ok" then
xiaotang1=trim(request("xiao1"))'姓名
xiaotang2=trim(request("xiao2"))'地址
xiaotang3=trim(request("xiao3"))'QQ
xiaotang4=trim(request("xiao4"))'内容
'if xiaotang1 = "" and xiaotang2 = "" and xiaotang3 = "" and xiaotang4 = "" then
'response.write "<script>alert('留言所有内容不得为空')</script>"
'end if
%>
<%
dim conn,sql,rs
set conn = server.createobject("adodb.connection")
conn.connectionstring="Provider = Microsoft.Jet.OLEDB.4.0;Data Source="&server.mapPath("db2.mdb")
conn.open

sql ="insert into liuyan(name,qq,address,content) values('"&xiaotang1&"','"&xiaotang3&"','"&xiaotang2&"','"&xiaotang4&"')"
conn.execute(sql) '这个方法用来执行sql语句

Set rs = Server.CreateObject("ADODB.Recordset")
sql = "select * from liuyan order by id desc"
rs.open sql, conn, 1, 1
rs.pagesize = 8
if isnumeric(request.querystring("page")) then
if request.querystring("page")="" or cint(request.querystring("page")) < 1 then
rs.absolutepage = 1
elseif cint(request.querystring("page")) > rs.pagecount then'这里内嵌的IF循环一定要和else 写在连在一起,不然还要写个end if
rs.absolutepage = rs.pagecount
else
rs.absolutepage = request.querystring("page")
end if
else
rs.absolutepage = 1
end if
%>

<p align="center">一共有<%=rs.recordcount%>条数据</p>
<p align="center">

<%for i=1 to rs.pagecount

response.write "<a href='tiaozhuan.asp?act=ok&page="&i&"'>"&i&"</a>|"
next
%></p>
<%
for i = 1 to rs.pagesize
if rs.eof then exit for
%>
<p align="letf">姓名:<%=rs("name")%>     地址:<%=rs("address")%>     QQ:<%=rs("qq")%>      留言内容:<%=rs("content")%></p>

<% rs.movenext

next
%>
<%else%><p align="center">暂时没有留言</p><% end if%>
</table>
<%
'rs.close
set rs = nothing
conn.close
set conn = nothing
%>
</body>
</html>
按F5 来是 能把空数据写入到数据库,点页数也是,直接把空数据写入数据库.
其实你们回答都不对,1楼的蛮离谱的回答...但是可能我没贴出其他代码,我写的留言全在一个页面执行的.穿值是必须要写到连接上去.不写上去分页就不成功.
后来我采用跳专处理掉了这个问题
2楼我把分给你吧.你虽答的不对,但辛苦你了.
展开
 我来答
百度网友0f37e23c0
推荐于2016-03-30 · TA获得超过1543个赞
知道大有可为答主
回答量:1070
采纳率:50%
帮助的人:1299万
展开全部
我帮你修改了 ,你仔细看看吧,或者复制下来 运行试试,应该没有问题的。
你可以Hi我:

<html>
<body>

<table><tr><td height="50" align="center" style="font-size:12px;">留言列表:<br/>
<%
actions=trim(request("act"))
if actions = "ok" then
xiaotang1=trim(request("xiao1"))'姓名
xiaotang2=trim(request("xiao2"))'地址
xiaotang3=trim(request("xiao3"))'QQ
xiaotang4=trim(request("xiao4"))'内容
if xiaotang1 = "" and xiaotang2 = "" and xiaotang3 = "" and xiaotang4 = "" then
response.write "<script>alert('留言所有内容不得为空')<"&"/script>"
response.End()
end if
%>
<%
dim conn,sql,rs
set conn = server.createobject("adodb.connection")
connstring="Provider = Microsoft.Jet.OLEDB.4.0;Data Source="&server.mapPath("db2.mdb")
conn.open connstring

sql ="insert into liuyan(name,qq,address,content) values('"&xiaotang1&"','"&xiaotang3&"','"&xiaotang2&"','"&xiaotang4&"')"
conn.execute sql '这个方法用来执行sql语句

Set rs = Server.CreateObject("ADODB.Recordset")
sql = "select * from liuyan order by id desc"
rs.open sql, conn, 1, 3
if not (rs.eof or rs.bof) then
rs.pagesize = 8
if isnumeric(request.querystring("page")) then
if request.querystring("page")="" or cint(request.querystring("page")) < 1 then
rs.absolutepage = 1
elseif cint(request.querystring("page")) > rs.pagecount then'这里内嵌的IF循环一定要和else 写在连在一起,不然还要写个end if
rs.absolutepage = rs.pagecount
else
rs.absolutepage = request.querystring("page")
end if
else
rs.absolutepage = 1
end if
%>

<p align="center">一共有<%=rs.recordcount%>条数据</p>
<p align="center">
<%
for i=1 to rs.pagecount
response.write "<a href='tiaozhuan.asp?act=ok&page="&i&"'>"&i&"</a>|"
next
%></p>
<%
for i = 1 to rs.pagesize
if rs.eof then exit for
%>
<p align="letf">姓名:<%=rs("name")%> 地址:<%=rs("address")%> QQ:<%=rs("qq")%> 留言内容:<%=rs("content")%></p>
<% rs.movenext
next
%>
<%
else
%><p align="center">暂时没有留言</p>
<%
end if
set rs = nothing
conn.close
set conn = nothing
end if
%>
</td>
</tr>
</table>
</body>
</html>
路瓃pv
2010-07-03 · TA获得超过961个赞
知道小有建树答主
回答量:653
采纳率:0%
帮助的人:547万
展开全部
你想要什么结果呢?
response.write "<a href='tiaozhuan.asp?act=ok&page="&i&"'>"&i&"</a>|"
这里是这么写的,act=ok当然会插数据库了如果不要插空数据,就改为:
response.write "<a href='tiaozhuan.asp?page="&i&"'>"&i&"</a>|"
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式