asp 修改表单提交问题,可以提交成功,就是不能更新数据库

主程序.asp<%ifsession("AdminName")=""thenresponse.Redirect"Admin_Login.asp"endif%><!--#i... 主程序.asp
<%
if session("AdminName") = "" then
response.Redirect "Admin_Login.asp"
end if
%>
<!--#include file="CONN.ASP"-->
<!--#include file="Sql_Erro.asp"-->
<html>
<head>

</head>

<body leftmargin="2" topmargin="0" marginwidth="0" marginheight="0">
<%
id=request("id")
Set rso=Server.CreateObject("ADODB.RecordSet")
sql="select * from bmxt where id="&id
rso.Open sql,conn,3,3
if rso.eof and rso.bof then
response.Write("没有数据记录!")
else
%>
<table align="center">
<form method="post" action="index_edit.asp?action=edit&id="<%=id%>>
<tr align="center" height="39">
<td>本人手机</td><td align="center" height="39"><input type="title" name="T7" maxlength=11 style="width:100px;" value="<%=rso("T7")%>"></td>
<td >常用QQ号</td><td align="center" height="39"><input type="title" name="T23" maxlength=15 style="width:100px;" value="<%=rso("T23")%>"></td></tr>
<td align="center" height="39" colspan="2"><input type="submit" value="我要修改!" name="submit"> </td>
</tr>
</table>
<% End If
rso.close
set rso=nothing
%>
</form>
</body>
</html>

《index_edit.asp》
<!--#include file="conn.asp"-->
<%
id=request("id")
%>
<%
if request("action") = "edit" then
id=request("id")
T7=request("T7")
T23=request("T23")
set rs=server.createobject("adodb.recordset")
sql="select * from bmxt where id="&id
rs.open sql,conn,1,3
rs("T7")=T7
rs("T23")=T23
rs.update
rs.close
set rs=nothing
conn.close
set conn=nothing
response.write "<script language='javascript'>" & chr(13)
response.write "alert('你的登记信息修改成功!');" & Chr(13)
response.write "window.document.location.href='Admin_Index.asp';"&Chr(13)
response.write "</script>" & Chr(13)
Response.End
else
response.write "<script language='javascript'>" & chr(13)
response.write "alert('你提交的参数有误!点击确定返回重新输入!');" & Chr(13)
response.write "window.document.location.href='Admin_Index.asp';"&Chr(13)
response.write "</script>" & Chr(13)
Response.End
end if
%>
展开
 我来答
施鸥6I
2012-11-19 · 超过42用户采纳过TA的回答
知道小有建树答主
回答量:99
采纳率:0%
帮助的人:88.1万
展开全部
你的错误提示是什么?
如果是Access数据库,请检查写入修改权限;另外检查传递参数值是否符合字段要求,传递值是否正确完整;
还有我在用ADO Recordset对象的update方法时是成对出现的,第一个update命令是告诉ADO程序要更新记录,然后对每个字段进行赋值,最后update命令是写入更新,同样的delete、addnew也是一样,需要用update方法结尾,作为提交操作的命令。不过我现在一般使用Command或Connection对象的Execute方法直接执行update、insert或delete操作。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
whiteamoon
2012-11-21 · TA获得超过251个赞
知道小有建树答主
回答量:199
采纳率:0%
帮助的人:168万
展开全部
目测代码整体没什么问题

主程序.asp
rso.Open sql,conn,3,3 读取记录不要用3,3打开,如果access数据库,锁表严重,降低整个系统的并发。而且使用完
conn.close
set conn=nothing
关闭掉
我感觉问题就在这里

index_edit.asp
request("id") 是一种非常不友好的编写方式,虽然简单但是会增加很多系统漏洞
get request.querystring("id")
post request.form("id")
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
mxw5211314
2012-11-23 · 超过22用户采纳过TA的回答
知道答主
回答量:139
采纳率:0%
帮助的人:24.9万
展开全部
rs.open sql,conn,3,3把这里改成rs.open sql,conn,1,3 游标类型你可以百度一下这几个数是怎么用的,id=request("id")这里不是大问题,不过最好要严格些,如果从表单猎取的ID值,就这样:request from("id"),从地址里获取request.querystring("id") 。先把游标类型改一下看行不行。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
linzi2
2012-11-21 · TA获得超过1261个赞
知道大有可为答主
回答量:1563
采纳率:0%
帮助的人:547万
展开全部
1、先确定sql是否选择到了你的数据记录,因为你没有判断,你可以Response.write出来看
2、确定你提交的数据是否合法,在入库前要进行必要的数据检查
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式