标题:[求助]=====在线等=========为何同时插入相同的两条留言!
取消只看楼主
hell
Rank: 1
等 级:新手上路
帖 子:81
专家分:0
注 册:2004-6-3
 问题点数:0 回复次数:4 
[求助]=====在线等=========为何同时插入相同的两条留言!

如题:小弟做的留言本练习: 共有8个字段:noteid,subject,userid,notetime,content,readnum,email,status 为什么每次留言时会往数据库中插入noteid不同,其它都相同的2条留言? 因为用到了两个rs,我想会不会是rs的关闭问题,就按什么顺序关闭rs呢? 搞了半天了搞不定!求大家看看!鞠躬先!!! ================求求大家帮我看看!============== <!--#include file="config.inc"--> <% set conn=server.createobject("adodb.connection") conn.open connstring set rs1=server.createobject("adodb.recordset") set rs2=server.createobject("adodb.recordset") sql1="select max(noteid) as maxid from notebook" '列出数据库中最大的留言编号

userid=trim(request.form("userid")) email=trim(request.form("email")) subject=trim(left(request.form("subject"),17)) content=trim(request.form("content"))

application.lock rs1.open sql1,conn,1,3 if rs1.eof or isnull(rs1("maxid")) then noteid="n00001" else temp=left(rs1("maxid"),6) '取得当前数据库中最大的原文留言编号 temp=right(temp,5) temp=cint(temp) temp=cstr(temp+1) for length=1 to 5-len(temp) '在留言编号前面补0,让其足5位 temp="0"&temp next noteid="n"&temp '完成本次留言序号的计算 end if notetime=now() '取得当前时间作为留言时间 insertstr="insert into notebook values('"&noteid&"','"&subject&"','"&userid&"','"&notetime&"','"&content&"',0,'"&email&"',0)" rs2.open insertstr,conn,1,3 application.unlock '----------两个rs都应关吗?可我关时总报错!关一个就可以-------- rs1.close conn.close set rs1=nothing set conn=nothing %> <font style="font:10pt" color=#9900cc>留言成功!请<a href="VBScript:window.close()">继续!</a></font>

搜索更多相关主题的帖子: 留言 在线 
2004-06-26 12:43
hell
Rank: 1
等 级:新手上路
帖 子:81
专家分:0
注 册:2004-6-3
得分:0 

寒星你好啊! 中间刷新了啊!现在的问题是: 每次留言都会向数据库中插入noteid(留言编号)不同,别的字段都相同的两条记录? 这是什么原因啊?我找了很久了找不出来!再帮我看看好吗?

十分感谢!


2004-06-26 14:15
hell
Rank: 1
等 级:新手上路
帖 子:81
专家分:0
注 册:2004-6-3
得分:0 

非常感谢寒心的热心指点! 现在才发现问题好多!我要重新写一次!

谢谢!


2004-06-26 17:49
hell
Rank: 1
等 级:新手上路
帖 子:81
专家分:0
注 册:2004-6-3
得分:0 

找到原因了!原来不是ASP程序的问题 是表单提交时的问题!害大家瞎忙半天 惭愧!&感谢!


2004-06-27 14:49
hell
Rank: 1
等 级:新手上路
帖 子:81
专家分:0
注 册:2004-6-3
得分:0 
我的提交按钮是这样写的:
&lt;input name="tijiao" type="submit" value="提交" onclick=tijiao_onclick&gt;
且在 sub tijiao_onclick()事件中又加入了form1.submit()
结果submit调用了三次:&lt;1&gt;type="submit"; &lt;2&gt;onclick=tijiao_onclick; &lt;3&gt;form1.submit()
所以同时会提交相同的三条记录:
把按钮写成下的语句就好了:
&lt;input name="tijiao" type="button" value="提交"&gt;
简单吧!


2004-06-27 15:14



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-2868-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.046279 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved