在同一个文件里修改并保存记录的问题??

这是一个modify.asp
1、打开之后读出所选记录的各字段
2、修改各字段后保存
在同一文件中进行
请大家帮忙看一下其实涉及ASP的也就几句话

还有:还有就是他如果提交按钮后
找不到原来所传过来的那个id
就会报错
如何解决呢?

源代码如下:
<%
db="guest.mdb"
Set conn = Server.CreateObject("ADODB.Connection")
connstr="driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath(""&db&"")
conn.open connstr
sql="select * from guest where id="&request("id")&""
set rs=server.createobject("adodb.recordset")
rs.open sql,conn,1,3
%>
<html>
<head>
<title>修改项目</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<link rel="stylesheet" href="../css.css" type="text/css">
</head>

<body bgcolor="#FFFFFF" text="#000000">
<form name="form1" method="post" action="modify.asp">
<table width="500" border="0" cellspacing="0" cellpadding="0" align="center" class="p1">
<tr bgcolor="#6633CC" align="center">
<td colspan="2" align="center" height="30"><font color="#FFFFFF">修改项目</font></td>
</tr>
<tr bgcolor="#FFFFCC">
<td width="20%" align="center">类型:</td>
<td width="80%">
<select name="type" size="1">
<option value="<%=rs("type")%>" selected><%=rs("type")%></option>
</select>
</td>
</tr>
<tr bgcolor="#CCFF99">
<td width="20%" align="center">姓名:</td>
<td width="80%">
<input type="text" name="name" value="<%=rs("name")%>">
</td>
</tr>
<tr bgcolor="#FFFFCC">
<td align="center">地址:</td>
<td>
<input type="text" name="add" value="<%=rs("add")%>">
</td>
</tr>
<tr bgcolor="#CCFF99">
<td align="center">电话:</td>
<td>
<input type="text" name="tel" value="<%=rs("tel")%>">
</td>
</tr>
<tr bgcolor="#FFFFCC">
<td align="center">网址:</td>
<td>
<input type="text" name="website" value="<%=rs("website")%>">
</td>
</tr>
<tr bgcolor="#CCFF99">
<td align="center">备注:</td>
<td>
<textarea name="bz" rows="5" cols="60"><%=rs("bz")%></textarea>
</td>
</tr>
<tr bgcolor="#FFFFCC">
<td align="center"> </td>
<td>
<input type="submit" name="submit" value="提交">
<input type="reset" name="reset" value="取消">
</td>
</tr>
</table>
<%rs.close%>
</form>
</body>
</html>
<%
db="guest.mdb"
Set conn = Server.CreateObject("ADODB.Connection")
connstr="driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath(""&db&"")
conn.open connstr
sql="select * from guest where id="&request("id")&""
set rs=server.createobject("adodb.recordset")
rs.open sql,conn,1,3
rs("name")=request.form("name")
rs("type")=request.form("type")
rs("name")=request.form("name")
rs("tel")=request.form("tel")
rs("website")=request.form("website")
rs("bz")=request.form("bz")
rs.update
rs.close
%>

[3566 byte] By [jmxfriend-星] at [2008-6-2]
# 1
找不到原来所传过来的那个id
就会报错
??
当然报错了!你有request("id")啊,id传不过来的时候你打算怎么处理呢?
cshadow-heli at 2007-10-29 > top of Msdn China Tech,Web,ASP...
# 2
不知道呀
请问你一下啦
用session保存吗
你们一般在同个文件实行删除修改是怎么做的呢?
jmxfriend-星 at 2007-10-29 > top of Msdn China Tech,Web,ASP...
# 3
在同个文件实行删除修改,最好要用到隐藏控件来传递数据!
pjp2001-笑莫问 at 2007-10-29 > top of Msdn China Tech,Web,ASP...
# 4
那大家看我这个代码
应该在哪里改一下呢?
jmxfriend-星 at 2007-10-29 > top of Msdn China Tech,Web,ASP...
# 5
我给你一个列子参考一下吧:
<%
d1=trim(request.form("a1"))
cdt=trim(request.form("dt"))
dim sql
dim sqla
dim rs
dim aa1
dim adt
set con=Server.CreateObject("ADODB.Connection")
con.open "DSN=telcom;UID=sa;PWD"
set rs=Server.createobject("adodb.recordset")
sql="select * from day where dt='" & date() & "'"
rs.open sql,con,1,3
if rs.recordcount=0 then
sqla="insert into day(one,dt) values ('"&d1&"',','"&cdt&"')"
con.execute sqla
else
aa1=RS.Fields("one")
adt=RS.Fields("dt")
rs("one")=trim(request.form("a1"))
rs("dt")=trim(request.form("dt"))
rs.update
end if
rs.close
set rs=nothing
con.close
set con=nothing
%>
<HTML>
<HEAD>
<TITLE>日常工作及交接班内容</TITLE>
</head>
<BODY>
<table border=0 cellspacing=1 width=1000 align=center>
<tr>
<td class=p2 width=25% align=right><font color=FF9933>*</font> 1:</td>
<td class=p2 width=35% bgcolor=E5E6D3>
<input type=text name=a1 value="<%response.write(aa1)%>" size=50>
</td>
</body>
</html>
ICAC2008-廉政公署 at 2007-10-29 > top of Msdn China Tech,Web,ASP...
# 6
id=request("id")

if id<>"" then

修改代码
end if

# 7
哎上楼的这个是好办法

如果传过来的值是空
那么应该怎么做呢????

如果传过来的值不等于空
"select * from guest where id="&request("id")&""
jmxfriend-星 at 2007-10-29 > top of Msdn China Tech,Web,ASP...