直播中
圖1 數(shù)據(jù)查詢(xún)與數(shù)據(jù)庫(kù)維護(hù)界面
圖2 返回信息提示界面
實(shí)現(xiàn)環(huán)境如下:
客戶(hù)端:Windows 98 操作系統(tǒng)+I(xiàn)E 5.0瀏覽器
服務(wù)器端:SQL Server 7.0數(shù)據(jù)庫(kù)
網(wǎng)站應(yīng)用程序開(kāi)發(fā)環(huán)境:Active Server Pages (ASP)
網(wǎng)頁(yè)制作開(kāi)發(fā)環(huán)境:Microsoft FrontPage 2000
編程實(shí)現(xiàn)
首先,用FrontPage 2000編制數(shù)據(jù)查詢(xún)與數(shù)據(jù)庫(kù)維護(hù)界面,通過(guò)與后臺(tái)SQL Server數(shù)據(jù)庫(kù)standard建立關(guān)聯(lián),從數(shù)據(jù)
庫(kù)表中查取數(shù)據(jù),生成數(shù)據(jù)集合rs。為加快程序訪(fǎng)問(wèn)速度,可以將其保存在session對(duì)象rs1中。部分代碼如下:
<%
sql=“select * from inform order by pdate DESC”
Set rs=Server.CreateObject(“ADODB.Recordset”)
rs.Open sql,“Driver={SQL Server};Server=
(local);Database=info;UID=user;PWD=password;”,3,2
set session(“rs1”)=rs
%>
插入一個(gè)Form,添加“插入”、“刪除”、“修改”等功能鍵,并將功能鍵處的單選按鈕的組名稱(chēng)設(shè)為edit,按鈕值分
別對(duì)應(yīng)為“insert”、“delete”、“update”。
然后,編寫(xiě)ASP程序tzwh1.asp 文件。從session 中讀取數(shù)據(jù),根據(jù)數(shù)據(jù)項(xiàng)用split函數(shù)將其分開(kāi),轉(zhuǎn)化為一個(gè)數(shù)組進(jìn)
行處理,并用trim函數(shù)去掉數(shù)據(jù)前后空格。程序部分代碼如下:
<% set rs=session(“rs1”)
edit=trim(Request(“edit”))
id=“, ”&trim(Request(“id”))&“, ”
eno=split(trim(Request(“NO”)), “, ”)
etitle=split(trim(Request(“title”)), “, ”)
epdate=split(trim(Request(“pdate”)), “, ”)
ewriter=split(trim(Request(“writer”)), “, ”)
econtent=split(trim(Request(“content”)) , “, ”)
%>
最后,實(shí)現(xiàn)功能鍵。功能鍵的選擇用case 語(yǔ)句實(shí)現(xiàn)。每一個(gè)實(shí)現(xiàn)過(guò)程中,利用inStr比較函數(shù)將讀出來(lái)的eno與數(shù)據(jù)項(xiàng)
的標(biāo)識(shí)號(hào)id相比較,可識(shí)別出所選的復(fù)選框是否有效。for循環(huán)體的下界采用Ubound函數(shù),避免了網(wǎng)頁(yè)數(shù)據(jù)的提取錯(cuò)誤。部
分程序代碼如下:
<% select case edit
case “insert”
for i=0 to Ubound(eno)
if inStr(id,“, ”&trim(eno(i))&“,”)>0 then
rs.AddNew
rs(“title”)=trim(etitle(i))
rs(“pdate”)=trim(epdate(i))
rs(“writer”)=trim(ewriter(i))
rs(“content”)=trim(econtent(i))
rs.Update
%>
<tr>
<td align=“center”><% =rs(“pdate”)
%>.</td>
<td><font color=“#008080”><% =rs(“title”) %>.</font></td>
<td><font color=“#008080”>插入新記錄成功!</font></td>
</tr>
<% End if
Next%>
<% case “delete”
for i=0 to 9
if inStr(id,“, ”&trim(rs(“id”))&“,” )>0 then%>
<tr>
<td align=“center”><% =rs(“pdate”)
%>.</td>
<td><% =rs(“title”) %>.</td>
<td><font color=“#FF0000”>記錄刪除成功!</font></td>
</tr>
<%
rs.delete 1
End if
rs.movenext
if rs.eof then Exit for End if
Next
case “update”
for i=0 to 9
if inStr(id,“,”&trim(rs(“id”))&“,”)>0 then
rs(“title”)=trim(etitle(i))
rs(“pdate”)= trim(epdate(i))
rs(“writer”)= trim(ewriter(i))
rs(“content”)= trim(econtent(i))
rs.Update %>
<tr>
<td align=“center”><% =rs(“pdate”)
%>.</td>
<td><% =rs(“title”) %>.</td>
<td><font color=“#0000FF”>記錄修改成功!</font></td>
</tr>
<% End if
rs.movenext
if rs.eof then Exit for End if
Next
end select
%>