如何解决页面刷新自动提交数据问题

azfailx 2011-11-17 04:45:11
我写了个留言版,什么都弄好了,就是我每刷新一次页面数据库就会自动添加一条记录,(注:数据库我已经设成非空才能写入) 急求高手解决!!在线等待,谢谢!!
...全文
118 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
qxq421367660 2011-11-17
  • 打赏
  • 举报
回复
使用HTTP传参方式进行提交操作,比如test.asp?action=add

action=Request.QueryString("action")
select case action
case "add"
'执行添加操作
end select
孟子E章 2011-11-17
  • 打赏
  • 举报
回复
代码操作完毕之后加
Response.Redirect "你的显示页面.asp"
azfailx 2011-11-17
  • 打赏
  • 举报
回复
你这个好像是asp.net里面的用法, 我这个留言版使用asp写的 ,用不了!!
azfailx 2011-11-17
  • 打赏
  • 举报
回复
加在哪里啊 ??怎么我加了就报错??
reciment 2011-11-17
  • 打赏
  • 举报
回复
if(!ispostBack)
{
///你的代码
}
azfailx 2011-11-17
  • 打赏
  • 举报
回复
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<%
randomize
num=cstr(int(9999-1000)*rnd+1000)
%>

<%
dim connstr,conn
datapath="db.mdb"
connstr="DBQ="+server.MapPath("db.mdb")+";DefaultDir=;Driver={Microsoft Access Driver (*.mdb)};"
set conn=Server.CreateObject("adodb.connection")
conn.open connstr
%>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>留言回复</title>
<link rel="stylesheet" href="css.css" />
<!-- 设置留言框为可见 -->
<script language="javascript">
function changeVisibility()
{
document.getElementById("message").style.visibility="visible";

}
</script>

</head>

<body>
<div><button name="hf" onclick="changeVisibility()">回复留言</button></div>

<div>
<%
set rs1=server.CreateObject("adodb.recordset")
rs1.open "select * from lyb order by id desc",conn,1
%>
<%
dim i
i=0
do while not rs1.eof
%>

<div>昵称:<%=rs1("username")%>[<%=rs1("ip")%>]留言时间:<%=rs1("date")%></div>
<div>留言内容:<%=rs1("content")%></div>
<%
i=i+1
if i>=rs1.recordcount then exit do
rs1.movenext
loop
%>
</div>
<div id="message">
<form id="form" name="form" action="index.asp" method="post" onsubmit="return myform()">
<table>
<tr>
<td width="100">昵称:</td>
<td>
<label>
<input id="username" type="text" name="username"/>
</label> </td>
</tr>
<tr>
<td width="100">回复内容:</td>
<td width="400"><textarea id="content" name="content" cols="80" rows="6"></textarea></td>
</tr>
<td width="100"></td>
<td>
<label>
验证码:<input type="text" name="yzm" value=""/><div style="background-color:#999999;float:left;font-size:20px"><%=num%></div>
<input id="yzm1" type="hidden" name="yzm1" value="<%=num%>"/>
</label>
</td>
</tr>
<tr>
<td height="40"> </td>
<td colspan="2" align="center"><input name="submit" type="submit"/ value="提交"/>
<input name="cancel" type="button"/ value="取消" /></td>
</tr>
</table>

</form>


<script language="vbscript">
sub form_onsubmit()
if form.yzm.value<>form.yzm1.value then
alert"验证码不正确!"
window.event.returnvalue=false
exit sub
end if
end sub
</script>

<script language="javascript">
function myform()
{
username=document.form.username.value
if (username==null||username=="")
{
alert("昵称不能为空!");
document.form.username.focus();
return false;
}


content=document.form.content.value
if (content==null||content=="")
{
alert("内容不能为空!");
document.form.content.focus();
return false;
}


}
</script>

<%
username=request.Form("username")

content=request.Form("content")

set rs=server.CreateObject("adodb.recordset")
sql="select * from lyb where (id is null)"
rs.open sql,conn,1,2
rs.addnew
rs("username")=username
rs("content")=content
rs("date")=now()

'取客户端IP地址
getIP=Request.ServerVariables("HTTP_X_FORWARDED_FOR")
If getIP= "" Then
getIP=Request.ServerVariables("REMOTE_ADDR")
rs("ip")=getIP
end if

rs.update
rs.close

set rs=nothing
conn.close
set conn=nothing

%>
</div>
</body>
</html>




p2227 2011-11-17
  • 打赏
  • 举报
回复
增加的是怎么样的一条记录,你的页面代码是如何的

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧