asp更新数据为什么老是更新第一条

从此不换网名 网易 程序员  2010-07-30 01:12:48
asp更新数据为什么老是更新第一条

不管我修改那一条记录,修改后的值都替换第一条记录。。

望各位指点,

代码如下:



<!--#include file="conn.asp"-->
<%
if session("admin")="" then
response.Write "<script language='javascript'>alert('网络超时或您还没有登陆!');window.location.href='login.asp';</script>"
response.End
end if

if Request.QueryString("ok") = "save" then



set rs=server.CreateObject("adodb.recordset")

sql="updata apply_type set type='"Request("type")"' where id="request.QueryString("id")""

'rs.open "select * from apply_type where id="request.QueryString("id")"",conn,1,3
'rs("type")=request.form("type")
'rs.update
'rs.close
response.write "<script LANGUAGE='javascript'>alert('编辑成功!');window.location.href='man_apply_type.asp';</script>"

end if
if request.QueryString("id")<>"" then
set rs1=server.CreateObject("adodb.recordset")
rs1.open "select * from apply_type where id="&request.QueryString("id"),conn,1,3
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<link href="css.css" rel="stylesheet" type="text/css">
<style type="text/css">
<!--
.style1 {color: #FF0000}
td {
font-size: 9pt;
}
input {
font-size: 9pt;
border: 1px solid #666666;
}
.STYLE2 {
font-size: 12pt;
font-weight: bold;
color: #666666;
}
-->
</style>
<title>编辑报考类别</title>
</head>
<body>
<form action="edit_apply_type.asp?ok=save" method="POST" name="myform" id="myform" onSubmit="return checkform()">
<table width="680" border="0" align="center" cellpadding="5" cellspacing="1" bgcolor="#FFFFFF">
<tr>
<td height="35" align="center" bgcolor="#FFFFFF"><span class="STYLE2">编辑报考类别</span></td>
</tr>
</table>
<table width="680" border="0" align=center cellpadding="3" cellspacing="1" bgcolor="#CCCCCC">
<tr bgcolor="#FFFFFF">
<td width="28%" align="right">报考类别:</td>
<td width="77%"><input id="type" name="type" type="text" onBlur="callServer();" value="<%=rs1("type")%>"><span id="test1"></span><input id="check" name="check" type="hidden"/><input id="id" name="id" type="hidden"/></td>
</tr>
<script language="javascript" type="text/javascript">
var xmlHttp = false;
try {
xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e2) {
xmlHttp = false;
}
}
if (!xmlHttp && typeof XMLHttpRequest != 'undefined') {
xmlHttp = new XMLHttpRequest();
}

function callServer() {
var a = document.getElementById("type").value;
if (a == null) return;
var url = "check_apply_type.asp?a=" + a;
xmlHttp.open("GET", url, true);
xmlHttp.onreadystatechange = updatePage;
xmlHttp.send(null);
}

function updatePage() {
if (xmlHttp.readyState < 4) {
test1.innerHTML="loading...";
}
if (xmlHttp.readyState == 4) {
var response = xmlHttp.responseText;
document.getElementById("check").value=response;
test1.innerHTML=response;
}
}
</script>
<tr bgcolor="#FFFFFF">
<td height="55" colspan="2" align="center"><input name="cmdSave" type="submit" class="go-wenbenkuang" value=" 修 改 ">
 
<input name="cmdCancel" type="button" class="go-wenbenkuang" onClick="javascript:window.close();location.href='man_apply_type.asp';" value=" 返 回 ">
</td>
</tr>
</table>
</form>
<script language="javascript">
function checkform(){
if(document.getElementById("type").value=="")
{
alert("报考类别不能为空!")
return false;
}
if(document.getElementById("check").value=="名称已被使用,请重新输入!")
{
alert("名称已被使用,请重新输入!")
return false;
}
}

</script>
</body>
</html>
<%end if%>



谢谢
...全文
69 点赞 收藏 11
写回复
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
yyisong998 2011-10-29
只能一条一条改,因为这样才可能对应相应的id,
回复
gingerkang 2010-07-30
"& 变量 &"
回复
代码那我应该怎样修改呢。。。
回复
sxldfang 2010-07-30
你的遮阳调用啊:

http://.../.../update.asp?id=3 // 表示更新第3跳记录
回复
我现在把语句改成这样也还是一样啊。。

不管我修改表中的那个记录他都是只修改第一条记示


<!--#include file="conn.asp"-->
<%
if session("admin")="" then
response.Write "<script language='javascript'>alert('网络超时或您还没有登陆!');window.location.href='login.asp';</script>"
response.End
end if

if Request.QueryString("ok") = "save" then
set rs=server.CreateObject("adodb.recordset")
'rs.open "select * from apply_type where id="request.QueryString("id"),conn,1,3
rs.open "select * from apply_type",conn,1,3
rs("type")=request.form("type")
rs.update
rs.close
response.write "<script LANGUAGE='javascript'>alert('编辑成功!');window.location.href='man_apply_type.asp';</script>"
end if

if request.QueryString("id")<>"" then
set rs1=server.CreateObject("adodb.recordset")
rs1.open "select * from apply_type where id="&request.QueryString("id"),conn,1,3
%>
回复
天上下雨 2010-07-30
你输出一下sql语句,看是不是你想的,也可以在数据库中运行一下输出的sql语句,看看到底哪里有问题~
回复
qiangdeng 2010-07-30
sql="updata apply_type set type='"Request("type")"' where id="request.QueryString("id")""

楼主的代码中sql根本就没有执行啊
回复
ID是自动编号
自动增加的数字
回复
柳晛 2010-07-30
id是什么类型的数据?
回复
这样也还是不行啊。。
还是替换掉了表中的第一条数据。。。。
回复
whitewindmail 2010-07-30
if Request.QueryString("ok") = "save" then



set rs=server.CreateObject("adodb.recordset")

sql="updata apply_type set type='"Request("type")"' where id="&request.form("id")

用post提交过来的应该这样接收吧 兄弟
回复
发动态
发帖子
ASP
创建于2007-09-28

2.8w+

社区成员

ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
申请成为版主
社区公告
暂无公告