❶ 如何向Access資料庫提交數據
小子你剛學ASP找個高手20分想要人家幫你搞定。低估了點吧,,看看我的給你個初學源碼?在加點分下次有不懂的找我。。哈哈!!
asp對access資料庫中數據的添加、修改、刪除(已測試
1:首先建立一個access資料庫保存為 xhnew.mdb 表名為aa
欄位如下:
id 自動排序
name 文本
content 文本
xhtime 日期 默認值 now()
title 文本
2:打開DW 建立文件conn.asp文件
代碼如下:
程序代碼
<%
set conn=server.createobject("adodb.connection")
conn.open "driver={microsoft access driver (*.mdb)};dbq="&server.mappath("xhnew.mdb")
%>
這段語句是連接資料庫的語句 set conn=server.createobject("adodb.connection")創建一個connection對象 用該對象的open方法打開資料庫
driver={microsoft access driver (*.mdb)};這句語句是access的驅動
dbq="&server.mappath("xhnew.mdb")這句是資料庫的路徑
建立conn.asp是為了方便接下來的教學。。。
我們可以任何要用到打開資料庫連接的文件里加
<!--#include file="conn.asp"-->就可以調用
是不是很方便。第一個小時就學這么多。。。當你弄明白上面的資料庫還有代碼後。。
就繼續跟著我學吧!
(第2個小時)
現在來學把資料庫的信息輸出來
下面先建立一個主文件index.asp
代碼如下
程序代碼
<!--#include file="conn.asp"-->
<%
exec="select * from aa order by id desc "
set rs=server.createobject("adodb.recordset")
rs.open exec,conn,1,1
%>
<table width="628" height="24" border="1" align="center" cellpadding="1" cellspacing="0">
<%
if rs.eof and rs.bof then
response.write("暫時沒有文章")
else
do while not rs.eof
%>
<tr>
<td width="66" height="22" ><%=rs("id")%></td>
<td width="66" ><%=rs("name")%></td>
<td width="66" ><%=rs("content")%></td>
<td width="273" ><%=rs("xhtime")%></td>
<td width="53" ><%=rs("title")%></td>
<td><a href="modify.asp?id=<%=rs("id")%>" target="_self">編輯</a></td>
<td width="32" ><a href="del.asp?id=<%=rs("id")%>">刪除</a></td>
</tr>
<%
rs.movenext
loop
end if
%>
</table>
<%
rs.close
set rs=nothing
conn.close
set conn=nothing
%>
<td><a href="add.asp">添加</a></td>
代碼解釋:
(1)<%
exec="select * from aa order by id desc "
set rs=server.createobject("adodb.recordset")
rs.open exec,conn,1,1
%>
上面的代碼是創建一個recordset對象。。該對象是用來打開資料庫中的表的。。也就是打開aa
exec="select * from aa order by id desc " 這句的意思是查找表aa中所有信息並倒序排列
信息. *號表示aa中所有的信息 order by id 就是aa中id欄位 desc 是倒序的意思
rs.open exec,conn,1,1 這句話的意思是用recordset對象來打開conn中的表
(2)
<%
if rs.eof and rs.bof then
response.write("暫時沒有文章")
else
do while not rs.eof
%>
上面是if語句。。if else語句是相當重要的。。
希望一些初學者要認真的研究一下if else語句。。不可心急。基礎才是硬道理
rs.eof 的意思是aa表中的最後一條記錄 那麼rs.bof就是第一條記錄
整個語句用中文翻譯就是 當aa表中的最後和最前一條信息沒有的時候。。就輸出暫時沒有文章
或則就循環到eof最後一條信息。。
(3)<tr>
<td width="66" height="22" ><%=rs("id")%></td>
<td width="66" ><%=rs("name")%></td>
<td width="66" ><%=rs("content")%></td>
<td width="273" ><%=rs("xhtime")%></td>
<td width="53" ><%=rs("title")%></td>
<td><a href="modify.asp?id=<%=rs("id")%>" target="_self">編輯</a></td>
<td width="32" ><a href="del.asp?id=<%=rs("id")%>">刪除</a></td>
</tr>
上面的代碼比較容易理解。。<%=rs("id")%>這個用法是輸出資料庫欄位id..
<a href="modify.asp?id=<%=rs("id")%>" target="_self">編輯</a>這段很重要。。
我來解釋一下。。在ie窗口點 編輯 的時候。。頁面會跳轉到modify.asp的文件里的id
並進行相應的處理。。這里很難解釋清楚。。在接下來的例子中再慢慢解說
(4)
<%
rs.movenext
loop
end if
%>
這句是循環結束的語句
rs.movenext 這句是游標向下指的意思
(5)
<%
rs.close
set rs=nothing
conn.close
set conn=nothing
%>
這句是關閉資料庫的語句
用完資料庫後要記得關閉資料庫。。以免佔用資源
養成隨手關門的好習慣
就學到這里。。好好消化上面的代碼。。心急吃不了熱豆腐。。
一步一個腳印最塌實
(第3個小時)
現在來學添加數據到資料庫 需要兩個文件來實現
(1)先建立一個提交表單add.asp
代碼如下:
程序代碼
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>無標題文檔</title>
</head>
<body>
<form name="form1" method="post" action="add_new.asp">
名字 <input type="text" name="name"><br>
備注 <input type="text" name="content"><br>
題目<input type="text" name="title" ><br>
<input type="submit" name="Submit" value="提交">
<input type="reset" name="Submit2" value="重置">
</form>
</body>
</html>
上面代碼要注意的是action="add_new.asp"提交到add_new.asp文件
還有name="name" name="content" name="title" 名字要對應
(2)處理文件add_new.asp
代碼如下:
程序代碼
<!--#include file="conn.asp"-->
<%
name=request.form("name")
content=request.form("content")
title=request.form("title")
exec="insert into aa(name,content,title) values('"+name+"','"+content+"','"+title+"')"
conn.execute exec
conn.close
set conn=nothing
response.redirect "index.asp"
%>
代碼解釋:
(1)
name=request.form("name")
content=request.form("content")
title=request.form("title")
這三句語句是接收add.asp發來的信息。。request.form("name")就是對應add.asp中的name="name"
(2)
exec="insert into aa(name,content,title) values('"+name+"','"+content+"','"+title+"')"
conn.execute exec
上面的語句是資料庫插如信息的語句
insert into aa(name,content,title) 中文意思是插入信息對應aa表中的三個欄位
三個欄位的數值是values('"+name+"','"+content+"','"+title+"') 這裡面對應的值是
這三句語句
name=request.form("name")
content=request.form("content")
title=request.form("title")
傳遞的
(3)
conn.close
set conn=nothing
response.redirect "index.asp"
關閉資料庫。。寫如成功後自動轉頁面到index.asp
到這里相信你已經學會如何添加新記錄到資料庫了。。
那就跟著我接著學吧。。。
ASP基礎實例教程之五個小時學會Asp連接access添加,刪除,修改四
(第4個小時)
接下來我們來學刪除資料庫信息。。。
刪除信息比較簡單。。只需要一個文件del.asp
代碼如下:
程序代碼
<!--#include file="conn.asp"-->
<%
exec="delete * from aa where id="&request.querystring("id")
conn.execute exec
conn.close
set conn=nothing
response.redirect "index.asp"
%>
代碼解釋:
exec="delete * from aa where id="&request.querystring("id")
conn.execute exec
先翻譯成中文意思
刪除表aa中id欄位的值。。這個值等於="&request.querystring("id")
還記得我們建立index.asp文件的時候嗎?裡面有段語句是這樣的
<td width="32" ><a href="del.asp?id=<%=rs("id")%>">刪除</a></td>
大家現在看明白了吧!你們這么聰明。。一定明白了。
我再補充說兩句
當我們點擊刪除的時候。。。這個時候就會連接到del.asp做處理。。
而同時del.asp接收到我們的請求是通過"&request.querystring("id")這句語句
然後conn.execute exec 這條語句就執行刪除。。
整個流程就是這樣。。。
希望學習的人好好弄清楚。。那樣我們才可以繼續學習修改
(第5個小時)
現在學習數據的修改。 這是難點。。大家要認真的跟著我學。。
本人也是看了很久才學會的。。解釋的不好多多包容。。
修改需要兩個文件
(一)建立modify.asp 和del.asp很像似
代碼如下:
程序代碼
<!--#include file="conn.asp"-->
<%
exec="select * from aa where id="&request.querystring("id")
set rs=server.createobject("adodb.recordset")
rs.open exec,conn,1,1
%>
<form name="form1" method="post" action="modifysave.asp">
<table width="748" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>name</td>
<td>content</td>
<td>title</td>
</tr>
<tr>
<td>
<input type="text" name="name" value="<%=rs("name")%>">
</td>
<td>
<input type="text" name="content" value="<%=rs("content")%>">
</td>
<td><input type="text" name="title" value="<%=rs("title")%>">
<input type="submit" name="Submit" value="提交">
<input type="hidden" name="id" value="<%=request.querystring("id")%>">
</td>
</tr>
</table>
</form>
<%
rs.close
set rs=nothing
conn.close
set conn=nothing
%>
代碼解釋:
(1)
<%
exec="select * from aa where id="&request.querystring("id")
set rs=server.createobject("adodb.recordset")
rs.open exec,conn,1,1
%>
這句exec="select * from aa where id="&request.querystring("id")我在del.asp里解釋過了
在這里也是一樣的道理
set rs=server.createobject("adodb.recordset")
rs.open exec,conn,1,1
上面是用recordset對象打開數據表。。。
(2)
<input type="text" name="name" value="<%=rs("name")%>">
這里要注意名字要對應。。否則或出錯。。
<input type="hidden" name="id" value="<%=request.querystring("id")%>">
這里是隱藏表單。。。提交隱藏的表單元素會隨著表單一起提交,用於傳遞變數
(二)建立modifysave.asp 文件
代碼如下:
程序代碼
<!--#include file="conn.asp"-->
<%
exec="select * from aa where id="&request.form("id")
set rs=server.createobject("adodb.recordset")
rs.open exec,conn,1,3
%>
<%
rs("name")=request.form("name")
rs("content")=request.form("content")
rs("title")=request.form("title")
rs.update
rs.close
set rs=nothing
conn.close
set conn=nothing
response.redirect"index.asp"
%>
代碼解釋:
(1)
rs("name")=request.form("name")
rs("content")=request.form("content")
rs("title")=request.form("title")
這三句話的意思是資料庫中的rs("name")的值等於接收到request.form("name")的值
request.form("name")的值是從modify.asp傳遞來的。。
(2)
rs.update 這句語句是更新資料庫里的信息的意思 就是把提交的信息上傳到資料庫
aspAsp連接access添加,刪除,修改已經都教完了
許多大的系統如新聞發布系統都是在這個基礎上建立的
希望大家能學有所成
❷ 如何用php修改資料庫中的數據
舉例如下:
創建userinfo_update.php頁面用於查詢用戶信息,先顯示信息,在修改:
先通過GET獲取用戶編號查詢用戶信息:
$sql = "select * from user_info where user_id='".$_GET['userId']."'";
$result = mysql_query($sql,$con);
if($row = mysql_fetch_array($result)){
}