ASP错误:对象关闭时,不允许操作!!
答案:6 悬赏:50 手机版
解决时间 2021-01-29 07:23
- 提问者网友:谁的错
- 2021-01-28 06:50
<%<br>sub NewsEdit()<br> dim Action,rsCheckAdd,rs,sql<br> Action=request.QueryString("Action")<br> if Action="SaveEdit" then<br> set rs = server.createobject("adodb.recordset")<br> if len(trim(request.Form("NewsName")))<1 then<br> response.write ("<script language=javascript> alert('新闻标题为必填项目!');history.back(-1);</script>")<br> response.end<br> end if<br> if Result="Add" then<br> sql="select * from NwebCn_News"<br> rs.open sql,conn,1,3<br> rs.addnew<br> rs("NewsName")=trim(Request.Form("NewsName"))<br> rs("Content")=Request.Form("Content")<br> GroupIdName=split(Request.Form("GroupID"),"┎╂┚")<br> rs("GroupID")=GroupIdName(0)<br> rs("Exclusive")=trim(Request.Form("Exclusive"))<br> if Request.Form("ChildFlag")=1 then<br> rs("ChildFlag")=Request.Form("ChildFlag")<br> rs("Sequence")=999<br> else<br> rs("ChildFlag")=0<br> rs("Sequence")=99<br> end if<br> rs("AddTime")=now()<br> rs("UpdateTime")=now()<br> end if <br> if Result="Modify" then<br> sql="select * from NwebCn_News where ID="&ID<br> rs.open sql,conn,1,3<br> rs("NewsName")=trim(Request.Form("NewsName"))<br> rs("Content")=Request.Form("Content")<br> GroupIdName=split(Request.Form("GroupID"),"┎╂┚")<br> rs("GroupID")=GroupIdName(0)<br> rs("Exclusive")=trim(Request.Form("Exclusive"))<br> if Request.Form("ChildFlag")=1 then<br> rs("ChildFlag")=Request.Form("ChildFlag")<br> rs("Sequence")=100<br> else<br> rs("ChildFlag")=0<br> end if<br> rs("UpdateTime")=now()<br> end if<br> rs.update ----------运行的时候这行报错:对象关闭时,不允许操作<br> rs.close<br> set rs=nothing <br> response.write "<script language=javascript> alert('成功编辑新闻信息!');changeAdminFlag('新闻信息列表');location.replace(NewsList.asp');</script>"<br> else<br> if Result="Modify" then<br> set rs = server.createobject("adodb.recordset")<br> sql="select * from NwebCn_News where ID="& ID<br> rs.open sql,conn,1,1<br>NewsName=rs("NewsName")<br>GroupID=rs("GroupID")<br>Exclusive=rs("Exclusive")<br>Content=rs("Content")<br>ChildFlag=rs("ChildFlag")<br>rs.close<br>set rs=nothing <br> end if<br>end if<br>end sub<br>%><br>--------------------------<br>高手帮忙看下,是什么原因,感谢。。<br><% <br>dim Result<br>Result=request.QueryString("Result")<br>dim ID,NewsName,Content<br>dim GroupID,GroupIdName,Exclusive,ChildFlag,Source<br>ID=request.QueryString("ID")<br>call NewsEdit() <br>%><br>有Result=Request.QueryString("Result")这句的。虽然添加不了,但可以修改,就是说Modify的值是可以取到的,那为什么不能添加呢?下面这句应该正确吧?<form action="NewsEdit.asp?Action=SaveEdit&Result=<%=Result%>&ID=<%=ID%>">
最佳答案
- 五星知识达人网友:想偏头吻你
- 2021-01-28 07:55
不要偷懒嘛~!!! <br>把rs.update那三行分别放到那两个块后面 <br><% <br>sub NewsEdit() <br>dim Action,rsCheckAdd,rs,sql <br>Action=request.QueryString("Action") <br>if Action="SaveEdit" then <br>set rs = server.createobject("adodb.recordset") <br>if len(trim(request.Form("NewsName")))<1 then <br>response.write ("<script language=javascript> alert('新闻标题为必填项目!');history.back(-1);</script>") <br>response.end <br>end if <br>if Result="Add" then <br>sql="select * from NwebCn_News" <br>rs.open sql,conn,1,3 <br>rs.addnew <br>rs("NewsName")=trim(Request.Form("NewsName")) <br>rs("Content")=Request.Form("Content") <br>GroupIdName=split(Request.Form("GroupID"),"┎╂┚") <br>rs("GroupID")=GroupIdName(0) <br>rs("Exclusive")=trim(Request.Form("Exclusive")) <br>if Request.Form("ChildFlag")=1 then <br>rs("ChildFlag")=Request.Form("ChildFlag") <br>rs("Sequence")=999 <br>else <br>rs("ChildFlag")=0 <br>rs("Sequence")=99 <br>end if <br>rs("AddTime")=now() <br>rs("UpdateTime")=now() <br>rs.update <br>rs.close <br>set rs=nothing <br><br>end if <br>if Result="Modify" then <br>sql="select * from NwebCn_News where ID="&ID <br>rs.open sql,conn,1,3 <br>rs("NewsName")=trim(Request.Form("NewsName")) <br>rs("Content")=Request.Form("Content") <br>GroupIdName=split(Request.Form("GroupID"),"┎╂┚") <br>rs("GroupID")=GroupIdName(0) <br>rs("Exclusive")=trim(Request.Form("Exclusive")) <br>if Request.Form("ChildFlag")=1 then <br>rs("ChildFlag")=Request.Form("ChildFlag") <br>rs("Sequence")=100 <br>else <br>rs("ChildFlag")=0 <br>end if <br>rs("UpdateTime")=now() <br>rs.update <br>rs.close <br>set rs=nothing <br>end if <br><br>response.write "<script language=javascript> alert('成功编辑新闻信息!');changeAdminFlag('新闻信息列表');location.replace(NewsList.asp');</script>" <br>else <br>if Result="Modify" then <br>set rs = server.createobject("adodb.recordset") <br>sql="select * from NwebCn_News where ID="& ID <br>rs.open sql,conn,1,1 <br>NewsName=rs("NewsName") <br>GroupID=rs("GroupID") <br>Exclusive=rs("Exclusive") <br>Content=rs("Content") <br>ChildFlag=rs("ChildFlag") <br>rs.close <br>set rs=nothing <br>end if <br>end if <br>end sub <br>%><br><br>补充:看了你代码,你只取了Action,没取Result啊。。。。<br>if Result="Add" then <br>在这句之前没有Result的取值语句。在前面加上一句<br>Result=Request.QueryString("Result")
全部回答
- 1楼网友:行雁书
- 2021-01-28 12:19
测测试网页的时候要关闭数据库的编辑页面
- 2楼网友:长青诗
- 2021-01-28 11:35
可以加个 on Error resume next
- 3楼网友:动情书生
- 2021-01-28 10:36
楼上说的对,不要偷懒! 错误原因在于你传来的result 值 既不是add 也不是Modify 所以数据库根本没有打开,你就update 肯定出错的
你根本没有给Result赋值 ????
- 4楼网友:爱难随人意
- 2021-01-28 10:17
当 Result 不是那两个值时 Rs就没被打开 是不是?
最好把
rs.update
rs.close
分别放到 IF 块里面去
- 5楼网友:从此江山别
- 2021-01-28 08:39
你好!
if 真复杂,你整理一下估计就知道怎么错了,估计是这种情况了
if ****
set rs=
。。。。。
end if
rs.update
rs.close
rs相关语句写到一块就行了
打字不易,采纳哦!
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯