三)關鍵區段:建立與資料庫的聯絡並將表單中收集到的資訊添加到ACCESS資料庫中。
ASP代碼放在〈%和%>之間。
<%
CompanyName = Request("CompanyName")
CName = Request("CName")
City = Request("City")
Tel = Request("Tel")
以上,首先取得表單中填寫的資料,使用ASP的Request對象非常容易可以實現資料的收集。雙引號中的就是上一步建立的各個項目的名字(NAME)。所以今後為每個項目起名字是個好習慣,儘管有時候並不一定用得到。這樣取得的資料就儲存在等號坐側的變數中了。
If CompanyName = "" Or CName = "" Or City = "" Or Tel = "" Then
'Response.Write "<html><body><center><font size=5>請將資料填寫完整。</font></center></body></html>"
Response.Redirect "error.htm"
Response.End
End If
這裡是檢測各個項目是否輸入了東西,如果為空白則不往下繼續執行,顯示錯誤資訊。注意:你可以使用兩種方法。我都列出了。方法一:使用Response.Write方法寫一個出錯頁面,類似於javascripts的document.write寫法,只是ASP使用Response.write罷了。方法二:使用Response.Redirect方法導向出錯頁面error.htm。我在方法一的代碼前加上單引號表示注釋。(ASP中表示注釋用單引號')。
set dbconnection=Server.CREATEOBJECT("ADODB.CONNECTION")
DBPath = Server.MapPath("customer.mdb")
dbconnection.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & DBPath
(1)建立Connection對象:dbconnection,建立一個串連(Connection)是資料庫存取的開始。我們使用ASP的內建對象方法Server.Createobject建立與資料庫的串連。ADODB是ASP的資料庫存取組件,不必擔心只要有ASP就有它了,是內建的。
(2)使用dbconnection.open方法開啟資料庫customer.mdb。driver參數文法: driver={Microsoft Access Driver (*.mdb)}必須這麼寫。告訴系統使用ACCESS ODBC驅動處理。dbq參數用來指定開啟的資料庫檔案,它必須是完整的路徑。例如"c:\inetpub\wwwroot\customer\customer.mdb",我們使用Server.MapPath的方法取得資料庫的完整路徑。
Set rs = Server.CreateObject("ADODB.Recordset")
建立Recordset對象rs。Connection僅僅是建立了與資料庫間的串連,要存取資料還應該再建立Recordset對象。
rs.Open "客戶", dbconnection, adOpenDynamic, 3
開啟資料庫中的表"客戶"(客戶是表名)。 文法:
rs.open 資料表名或SQL指令,已經建立的Connection對象(這裡是dbconnection), 鎖定類型
rs.AddNew
rs("公司名稱") = CompanyName
rs("聯絡人姓名") = CName
rs("所在城市") = City
rs("電話號碼") = Tel
rs.Update
用AddNew向資料庫請求添加資料。最後用Update寫入。注意:等號右側的變數儲存著用Request取得的表單資料。雙引號內的就是資料庫的欄位,應該與資料庫的一致啊。否則會出錯的。這樣變數內的資料就寫入了資料庫對應的欄位內了。
Response.Write "<html><body><center><font size=5>祝賀,您的資料已經添加進資料庫了!<p>"
Response.Write "<a href='viewdatabase.asp'>查看資料</a>"
Response.Write "</font></center></body></html>"
寫入成功後顯示祝賀資訊並建立查看資料庫記錄的串連。
%>
<html>
<head>
<title></title>
</head>
<body>
</body>
</html>