教程|十天學會
上一節:刪除記錄
學習目的:學會資料庫的基本操作--修改記錄
先來看代碼:(存為exam8.asp就可以了)
<%
set conn=server.createobject("adodb.connection")
conn.open "driver={microsoft access driver (*.mdb)};dbq="&server.mappath("data/guestbook.mdb")
exec="select * from guest where id="&request.form("id")
set rs=server.createobject("adodb.recordset")
rs.open exec,conn
%>
<form name="form1" method="post" action="modifysave.asp">
<table width="748" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>name</td>
<td>tel</td>
<td>message</td>
</tr>
<tr>
<td>
<input type="text" name="name" value="<%=rs("name")%>">
</td>
<td>
<input type="text" name="tel" value="<%=rs("tel")%>">
</td>
<td>
<input type="text" name="message" value="<%=rs("message")%>">
<input type="submit" name="Submit" value="提交">
<input type="hidden" name="id" value="<%=request.form("id")%>">
</td>
</tr>
</table>
</form>
<%
rs.close
set rs=nothing
conn.close
set conn=nothing
%>
到現在應該分析這個代碼沒有什麼問題了吧,這個代碼的作用是接受前面一個頁面的ID然後顯示這條記錄,文字框即是輸入的地方也是顯示的地方,如果需要修改的話修改以後按提交;如果不需要修改就可以直接按提交按鈕。
在這裡因為本教程適合初學的,所以也把提交的表單內容給出來,把下面代碼存為8.htm檔案
<form name="form1" method="post" action="exam8.asp">
請輸入要修改的記錄的ID:
<input type="text" name="id">
<br>
<input type="submit" name="submit" value="提交">
</form>
這裡還有一個東西以前沒有說,那就是隱藏的表單元素:hidden元素,裡面的value是不用使用者輸入的,會隨著表單一起提交,用於傳遞變數。
下面是modifysave.asp的代碼:
<%
set conn=server.createobject("adodb.connection")
conn.open "driver={microsoft access driver (*.mdb)};dbq="&server.mappath("data/guestbook.mdb")
exec="select * from guest where id="&request.form("id")
set rs=server.createobject("adodb.recordset")
rs.open exec,conn,1,3
rs("name")=request.form("name")
rs("tel")=request.form("tel")
rs("message")=request.form("message")
rs.update
rs.close
set rs=nothing
conn.close
set conn=nothing
%>
在這裡,rs.open exec,conn,1,3後面的參數是1,3,這我以前提過,修改記錄就要用1,3。實際上修改記錄很容易看懂,記錄集是rs,rs("aa")就是目前記錄aa欄位的東西,讓它等於新的資料request.form("aa")當然就修改了,不過最後別忘記儲存,那就是rs.update!
說到這裡,記錄的搜尋,讀取,修改,插入都說了,通過這最基本的東西就可以作出複雜的東西了,外面的大型資料庫:新聞系統,留言簿就是欄位多一點罷了。今天的樣本中的代碼是結合以前的資料庫的,以後回去調試分析一下。
大家測試的流程:首先運行8.htm檔案
單擊提交後,在下圖中修改記錄
修改後單擊提交,如下圖,說明已經修改成功
可以利用以前的duqu.asp來顯示是否已經成功修改
下一節:組件介紹