網(wǎng)站開發(fā)經(jīng)典教程_第1頁(yè)
網(wǎng)站開發(fā)經(jīng)典教程_第2頁(yè)
網(wǎng)站開發(fā)經(jīng)典教程_第3頁(yè)
網(wǎng)站開發(fā)經(jīng)典教程_第4頁(yè)
網(wǎng)站開發(fā)經(jīng)典教程_第5頁(yè)
已閱讀5頁(yè),還剩75頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、網(wǎng)站開發(fā)數(shù)字藝術(shù)設(shè)計(jì)系李曉平第一頁(yè),共八十頁(yè)。第1章 ASP基礎(chǔ)一、Web基礎(chǔ)(1)、Web概述 Web是一種基于超級(jí)鏈接技術(shù)的分布式超媒體系統(tǒng),是對(duì)超文本系統(tǒng)的擴(kuò)充。信息的表示和傳送一般使用HTML格式,利用這種格式描述的信息可以為用戶提供一個(gè)易于使用的包含超媒體信息的圖形化界面。第二頁(yè),共八十頁(yè)。(2)、靜態(tài)網(wǎng)頁(yè):是指在網(wǎng)頁(yè)文件里不存在程序代碼,只有HTML標(biāo)記,其文件后綴為htm、html。缺少交互性(3)、動(dòng)態(tài)網(wǎng)頁(yè):是指在網(wǎng)頁(yè)文件中不僅包括HTML標(biāo)記,同時(shí)還包含實(shí)現(xiàn)相關(guān)功能的程序代碼,該網(wǎng)頁(yè)的后綴通常根據(jù)語(yǔ)言不同而不同。第三頁(yè),共八十頁(yè)。(4)、交互式動(dòng)態(tài)網(wǎng)頁(yè)實(shí)現(xiàn)技術(shù)簡(jiǎn)介 1、CGI

2、:是外部程序和Web服務(wù)器之間的標(biāo)準(zhǔn)編程接口。用Html是無(wú)法把信息記錄到某一個(gè)特定文件里的。要把客戶端的信息記錄在服務(wù)器的硬盤上,就要用到CGI。 這是CGI最重要的作用,它補(bǔ)充了Html的不足。 2、ASP:活動(dòng)服務(wù)器網(wǎng)頁(yè),易開發(fā)和修改、功能強(qiáng)大,是動(dòng)態(tài)網(wǎng)頁(yè)開發(fā)技術(shù)中最為流行的技術(shù)之一。 3、PHP:超文本預(yù)處理器,是一種HTML內(nèi)嵌式的語(yǔ)言(類似于ASP)。 第四頁(yè),共八十頁(yè)。4、JSP(Java服務(wù)器頁(yè)面):是Sun公司推出的網(wǎng)站開發(fā)技術(shù),是將純Java代碼嵌入HTML中實(shí)現(xiàn)動(dòng)態(tài)功能的一項(xiàng)技術(shù)。與ASP并駕其驅(qū)不同點(diǎn)在于它使用JavaScript腳本程序。 5、ASP.NET:使用VB

3、.NET及C#作為其開發(fā)語(yǔ)言,比ASP執(zhí)行效率更高。第五頁(yè),共八十頁(yè)。三、ASP概述(1)、ASP(active server page):活動(dòng)服務(wù)器頁(yè)面,是微軟公司開發(fā)的服務(wù)器端的腳本編寫環(huán)境,可以用它來(lái)創(chuàng)建動(dòng)態(tài)WEB頁(yè)或生成功能強(qiáng)大的WEB應(yīng)用程序。(2)、建立ASP程序(.asp)(3)、IIS的安裝與配置第六頁(yè),共八十頁(yè)。四、ASP的語(yǔ)法編寫規(guī)則(1)、ASP的文件結(jié)構(gòu)1、文本2、HTML標(biāo)記3、腳本命令:如VBScript4、ASP代碼:位于之間的命令 第七頁(yè),共八十頁(yè)。四、ASP的語(yǔ)法編寫規(guī)則(2)、ASP指令1、輸出指令:2、ASP處理vb指令:為ASP提供處理.asp文件所需的

4、信息,必須出現(xiàn)在第一行如。3、ASP包含指令#include:使用時(shí)必須命使用注釋定界符將命令包含起來(lái),如果包含的文件存在于父文件所在文件夾或其子文件夾中,就要使用file參數(shù)指定相對(duì)路徑。第八頁(yè),共八十頁(yè)。四、ASP的語(yǔ)法編寫規(guī)則(3)、ASP語(yǔ)句的書寫形式1、不區(qū)分大小寫2、一條ASP語(yǔ)句就是一行,不能將多條ASP語(yǔ)句寫在一行里,也不能將一條ASP語(yǔ)句寫在多行里。如及都是錯(cuò)誤的。第九頁(yè),共八十頁(yè)。四、ASP的語(yǔ)法編寫規(guī)則3、語(yǔ)句太長(zhǎng)時(shí),可以自動(dòng)換行或在換行處加上_(下劃線)。4、在ASP中的位置可以和ASP語(yǔ)句放在一行,也可以單獨(dú)成為一行。如5、養(yǎng)成良好的書寫習(xí)慣,運(yùn)用恰當(dāng)?shù)目s進(jìn)以增強(qiáng)可讀

5、性。第十頁(yè),共八十頁(yè)。ASP內(nèi)置對(duì)象Request對(duì)象Response對(duì)象Server對(duì)象Session對(duì)象Application對(duì)象ObjectContext對(duì)象這六個(gè)ASP內(nèi)置對(duì)象都是在Web服務(wù)器端運(yùn)行的,應(yīng)該放在服務(wù)器腳本中第十一頁(yè),共八十頁(yè)。Response對(duì)象Response 對(duì)象是ASP中一個(gè)重要的內(nèi)置對(duì)象,用于向客戶端瀏覽器輸出指定的信息,使用response對(duì)象可以實(shí)現(xiàn)動(dòng)態(tài)創(chuàng)建Web頁(yè)面,重定向客戶端請(qǐng)求以及向客戶端寫入Cookie等功能。一、Response對(duì)象的屬性1、buffer:表明頁(yè)面的輸出是否被緩沖。 可以加快客戶端的訪問(wèn)速度,如論壇網(wǎng)站2、Expires屬性:設(shè)

6、置Web頁(yè)面保留在客戶端瀏覽器緩沖區(qū)的時(shí)間長(zhǎng)度。將此參數(shù)設(shè)置為 0 可使緩存的頁(yè)立即過(guò)期。Response.expires=分鐘數(shù)第十二頁(yè),共八十頁(yè)。3、ExpiesAbsolute:明確指定緩存于瀏覽器中Web頁(yè)面的到期日期和時(shí)間,在指定的日期和時(shí)間未到期之前返回該頁(yè)面時(shí),就顯示緩存的內(nèi)容。防止重復(fù)的提交或者嚴(yán)格的次序等,必須讓用戶的數(shù)據(jù)立即在使用后就過(guò)期,當(dāng)用戶后退時(shí)就顯示過(guò)期而不能繼續(xù)使用。為安全考慮。Response.Buffer = True Response.ExpiresAbsolute = Now() - 1 Response.Expires = 0 Response.Cach

7、eControl = no-cache 第十三頁(yè),共八十頁(yè)。response常用方法一、write方法格式:response.write variantVariant:包括任何數(shù)據(jù)類型的數(shù)據(jù)及變量的值html標(biāo)記注意:write方法在輸出數(shù)據(jù)時(shí)將所有數(shù)據(jù)都作為字符型數(shù)據(jù)處理如果同時(shí)輸出不同類型的數(shù)據(jù),需要在數(shù)據(jù)間使用字符串連接運(yùn)算符&例:response.write 5 &”是一個(gè)整數(shù)&” response.write “現(xiàn)在是:”¤th &”點(diǎn)”& currentm &”分”第十四頁(yè),共八十頁(yè)。(2)直接向客戶端瀏覽器輸出html標(biāo)記時(shí),瀏覽器就會(huì)解釋該html標(biāo)記,并按格式顯示

8、給用戶例p88 4-3(3)當(dāng)之間只有一行response.write語(yǔ)句時(shí)可以用代替(4)在頁(yè)面中輸出%或時(shí)要用轉(zhuǎn)義字符%及”例:response.write &歡迎訪問(wèn)! % &%第十五頁(yè),共八十頁(yè)。二、redirect方法用于重定向到另一個(gè)網(wǎng)頁(yè)上三、end方法使web服務(wù)器停止處理腳本并返回當(dāng)前結(jié)果,文件中剩余的內(nèi)容將不被處理如果response.buffer已設(shè)置為true,則調(diào)用response.end將輸出緩沖中的內(nèi)容。第十六頁(yè),共八十頁(yè)。四、flush方法可以立即發(fā)送緩沖區(qū)中的數(shù)據(jù)。如果未將buffer設(shè)置為true則會(huì)導(dǎo)致運(yùn)行時(shí)錯(cuò)誤。五、clear方法刪除緩沖區(qū)中所有html輸

9、出。第十七頁(yè),共八十頁(yè)。Request對(duì)象用于獲取客戶端提交的全部信息。一、檢索表單數(shù)據(jù)格式:request.form(表單名稱)(index)|.count說(shuō)明:表單名稱即為控件名稱 index為索引值,用來(lái)取得表單中相同 名稱的元素值。 count集合中相同名稱元素的個(gè)數(shù)表單傳送方式分為post和get 兩種第十八頁(yè),共八十頁(yè)。二、檢索查詢字符串利用querystring環(huán)境變量可以檢索http查詢字符串中變量的值。即url地址中的?字符之后的內(nèi)容,傳遞多個(gè)參數(shù)時(shí),用&作為參數(shù)間的人隔符例:語(yǔ)法:request.querystring(變量名)(index)|.count有兩種情況用que

10、rystring取得數(shù)據(jù)1、表單中通過(guò)get方式提交的數(shù)據(jù)2、超級(jí)鏈接傳遞的參數(shù)第十九頁(yè),共八十頁(yè)。Request.servervariables(“REMOTE_ADDR”)獲取遠(yuǎn)端主機(jī)的IP地址。Request.totalbytes:從客戶端接收到的字節(jié)數(shù)例:response.write reuest.totalbytes第二十頁(yè),共八十頁(yè)。(1)怎樣向?yàn)g覽器輸出信息”你好”?(2)怎樣重定向到另一個(gè)網(wǎng)頁(yè)?(3)結(jié)束腳本的執(zhí)行用?(4)打開緩沖區(qū)的目的?具體方法是?(5)Response.flush及response.clear的含義?(6)以下代碼的含義是?為什么這樣做? Respons

11、e.Buffer = True Response.ExpiresAbsolute = Now() - 1 Response.Expires = 0 Response.CacheControl = no-cache回顧上節(jié)內(nèi)容第二十一頁(yè),共八十頁(yè)。cookiesCookies是一種能夠讓網(wǎng)站服務(wù)器把少量數(shù)據(jù)儲(chǔ)存到客戶端的硬盤或內(nèi)存,或是從客戶端的硬盤讀取數(shù)據(jù)的一種技術(shù)。Cookies是當(dāng)你瀏覽某網(wǎng)站時(shí),由Web服務(wù)器置于你硬盤上的一個(gè)非常小的文本文件,它可以記錄你的用戶ID、密碼、瀏覽過(guò)的網(wǎng)頁(yè)、停留的時(shí)間等信息。當(dāng)你再次來(lái)到該網(wǎng)站時(shí),網(wǎng)站通過(guò)讀取Cookies,得知你的相關(guān)信息,就可以做出相應(yīng)的

12、動(dòng)作,如在頁(yè)面顯示歡迎你的標(biāo)語(yǔ),或者讓你不用輸入ID、密碼就直接登錄等等。 分為臨時(shí)cookies和久cookies第二十二頁(yè),共八十頁(yè)。Cookies的寫入與讀出應(yīng)用response對(duì)象的cookies數(shù)據(jù)集合寫入cookie文件語(yǔ)法:response.cookies(cookiesname)(key).attribute=value注意:response.cookies必須在所有 html元素的前面如果想用在文件的任意地方,必須在文件開頭加上response.buffer=true第二十三頁(yè),共八十頁(yè)。Cookies的屬性:Response.cookies(”cookiesname”).e

13、xpires=j日期指定cookies的到期時(shí)間Haskeys:是否為cookies字典第二十四頁(yè),共八十頁(yè)。session對(duì)象使用session對(duì)象可以存儲(chǔ)用戶個(gè)人會(huì)話所需的信息。當(dāng)用戶在web站點(diǎn)中對(duì)不同頁(yè)面進(jìn)行切換時(shí),存儲(chǔ)在session對(duì)象中的變量不會(huì)被清除。使用session對(duì)象變量可以實(shí)現(xiàn)用戶信息在多個(gè)web頁(yè)面間共享,還可以用來(lái)跟蹤瀏覽者的訪問(wèn)路徑。第二十五頁(yè),共八十頁(yè)。語(yǔ)法:Session.contents(“名稱”)=值或 session(“變量名稱”)=值例:Session.contents(“user”)=usernameSession.contents(“pass”)=

14、passsession(“user”)=username Session (“pass”)=pass第二十六頁(yè),共八十頁(yè)。可以利用循環(huán)或for each語(yǔ)句實(shí)現(xiàn)遍歷每一個(gè)session值例For each a in session.contentsResponse.write session(a)next第二十七頁(yè),共八十頁(yè)。Session對(duì)象的方法Abandon :該方法將刪除所有存儲(chǔ)在session中的對(duì)象和變量,并釋放它們所占有的資源。如果沒有明確調(diào)用abandon方法,服務(wù)器在session對(duì)象的timeout屬性規(guī)定的時(shí)間后執(zhí)行刪除操作。abandon方法被調(diào)用時(shí),將按序刪除當(dāng)前的

15、Session 對(duì)象,不過(guò)在當(dāng)前頁(yè)中所有腳本命令都處理完后,對(duì)象才會(huì)被真正刪除。這就是說(shuō),在調(diào)用 Abandon 時(shí),可以在當(dāng)前頁(yè)上訪問(wèn)存儲(chǔ)在 Session 對(duì)象中的變量,但在隨后的 Web 頁(yè)上不行。第二十八頁(yè),共八十頁(yè)。Session的屬性Timeout屬性:設(shè)置session的到期時(shí)間,寫在設(shè)置session變量的位置Sessionid屬性:創(chuàng)建session對(duì)象時(shí)生成的唯一標(biāo)識(shí),是一個(gè)長(zhǎng)整型數(shù)。第二十九頁(yè),共八十頁(yè)。Session對(duì)象的事件Session_onstart事件:在創(chuàng)建一個(gè)新會(huì)話時(shí)發(fā)生Session_onend事件:對(duì)象結(jié)束時(shí)發(fā)生的事件。通常用于設(shè)置一些清理系統(tǒng)對(duì)象或變量

16、的值,只有applicationserversession對(duì)象可以出現(xiàn)在session_onend 事件代碼中第三十頁(yè),共八十頁(yè)。Application對(duì)象第三十一頁(yè),共八十頁(yè)。Global.asa是一個(gè)可選文件,可以在該文件中指定session和application對(duì)象的事件腳本。Global.asa文件在以下幾種情況下被調(diào)用application_onstart onend Session_onstart onend一經(jīng)創(chuàng)建則網(wǎng)站中所有頁(yè)包括子文件夾里的頁(yè)都起作用第三十二頁(yè),共八十頁(yè)。Global.asa文件的結(jié)構(gòu)Sub Application_OnStartApplication_On

17、Start 當(dāng)任何客戶首次訪問(wèn)該應(yīng)用程序的首頁(yè)時(shí)運(yùn)行End Sub Sub Session_OnStart Session_OnStart 當(dāng)客戶首次運(yùn)行 ASP 應(yīng)用程序中的任何一個(gè)頁(yè)面時(shí)運(yùn)行End Sub Sub Session_OnEnd Session_OnEnd 當(dāng)一個(gè)客戶的會(huì)話超時(shí)或退出應(yīng)用程序時(shí)運(yùn)行End Sub Sub Application_OnEnd Application_OnEnd 當(dāng)該站點(diǎn)的 WEB 服務(wù)器關(guān)閉時(shí)運(yùn)行End Sub 第三十三頁(yè),共八十頁(yè)。Application主要被用于統(tǒng)計(jì)網(wǎng)站訪問(wèn)的人數(shù)統(tǒng)計(jì)廣告點(diǎn)擊的次數(shù)創(chuàng)建聊天室讀取數(shù)據(jù)庫(kù)中的數(shù)據(jù)等第三十四頁(yè),共八十

18、頁(yè)。Session主要用于存儲(chǔ)用戶的首選項(xiàng)保存用戶的身份標(biāo)記,實(shí)現(xiàn)用戶的身份認(rèn)證和用戶權(quán)限管理等第三十五頁(yè),共八十頁(yè)。Server對(duì)象為網(wǎng)站提供服務(wù)的。一、scripttimeout屬性:設(shè)置腳本執(zhí)行時(shí)間,默認(rèn)90秒見例p108-4-13二、CreatObject方法格式:set 實(shí)例名=server.creatobject(“組件名”)如:set rs=server.creatobject(“adodb.recordset”)清除對(duì)象實(shí)例:Rs=nothing(不使用則自動(dòng)清除)第三十六頁(yè),共八十頁(yè)。2、mappath方法:將指定的虛擬路徑(字符串)轉(zhuǎn)換為物理路徑。語(yǔ)法:物理路徑=serve

19、r.mappath(“path”)Server.mappath(“/test.asp”):當(dāng)前站點(diǎn)下Server.mappath(“./test.asp”):上一級(jí)Server.mappath(“./”):當(dāng)前目錄3、HTMLEncode方法;是對(duì)指定的字符串應(yīng)用html編碼語(yǔ)法:server.htmlencode(string)第三十七頁(yè),共八十頁(yè)。Server.urlencode:將發(fā)送到服務(wù)器的漢字及其它字符進(jìn)行編碼傳送即加密傳送Server.execute 調(diào)用另一個(gè)asp文件,再繼續(xù)執(zhí)行其他代碼Server.transfer第三十八頁(yè),共八十頁(yè)。ASP組件調(diào)用內(nèi)置組件有兩個(gè)步驟:1、

20、創(chuàng)建組件一個(gè)實(shí)例(聲明一個(gè)對(duì)象)2、調(diào)用該組件的方法和屬性例:Set 對(duì)象名=server.createobject(“組件名”)Set fa=server.createobject(“mswc.adrotator”)Fa.getadvertisement()第三十九頁(yè),共八十頁(yè)。Ad Rotator組件(廣告輪顯)聲明一個(gè)實(shí)例:Set fa=server.createobject(“mswc.adrotator”)屬性:Border:指定廣告圖片四周的邊框Clickable:指定是否將廣告作為超鏈接顯示。默認(rèn)true第四十頁(yè),共八十頁(yè)。二、相關(guān)文件1、循環(huán)定時(shí)文件格式:redirect ur

21、lWidthheightBorder*AdurlAdhomepageurlTextImpressions 切換時(shí)間比例第四十一頁(yè),共八十頁(yè)。2、重定向文件當(dāng)用戶單擊廣告圖像時(shí),會(huì)重定向該文件,在重定向文件中使用request.querystring(”url”)來(lái)取得與被單擊圖像相關(guān)的url3、應(yīng)用程序文件即設(shè)置實(shí)例及顯示圖像圖像的文件第四十二頁(yè),共八十頁(yè)。Content Linking組件應(yīng)用:電子書語(yǔ)法:set 對(duì)象名server.createobject(“mswc.nextlink”)相關(guān)文件1、內(nèi)容鏈接文件是一個(gè)文本文件,語(yǔ)法文件名描述文字注意文件名與描述之字之間要用tab分開第四十

22、三頁(yè),共八十頁(yè)。2、建立鏈接文件3、分頁(yè)文件屬性:Getlistcount(listurl):統(tǒng)計(jì)內(nèi)容鏈接列表中項(xiàng)目數(shù)Getnexturl(“l(fā)isturl”):下一頁(yè)urlGetnextdescription(listurl):下一頁(yè)的描述文件說(shuō)明Getpreviousurl(listurl):上一頁(yè)的urlGetpreviousdescription(listurl):上一頁(yè)的描述文件說(shuō)明第四十四頁(yè),共八十頁(yè)。Getlistindex(listurl):當(dāng)前頁(yè)的索引Getnthdescription(listurl,i):第 i頁(yè)的文字說(shuō)明Getnthurl(listurl,i):第i頁(yè)的

23、url第四十五頁(yè),共八十頁(yè)。組件利用組件能夠?qū)崿F(xiàn)對(duì)服務(wù)文件系統(tǒng)的操作主要對(duì)象TextstreamFileFolderdrives第四十六頁(yè),共八十頁(yè)。文件及文件夾處理1、對(duì)象語(yǔ)法:Set fs=server.createobject(“scripting.”)或Set fs=server.createobject(“scripting.”)Set fo=fs.getdrive(“驅(qū)動(dòng)名”)第四十七頁(yè),共八十頁(yè)。屬性方法:2、復(fù)制、移動(dòng)、刪除文件Fs.createfolder (“folder”):建立文件夾Fs.createtextfile(“.txt”)建立文本文件Fs.copy) “源文件

24、”,“目標(biāo)文件”Fs.movefile (folder) “源文件”,“目標(biāo)文件” 同一驅(qū)動(dòng)器Fs.deletefile (folder)文件注意:給定用戶權(quán)限第四十八頁(yè),共八十頁(yè)。判斷訪問(wèn)的指定的文件是否存在Fs.(路徑)判斷訪問(wèn)的指定的文件夾是否存在Fs.folderexists(路徑)以上直接用fso 對(duì)象即可s獲取指定文件的大小Fs.size獲取指定文件的創(chuàng)建日期和時(shí)間Fs.datecreated以上兩個(gè)方法必須使用file對(duì)象本身第四十九頁(yè),共八十頁(yè)。drive組件Drive對(duì)象的屬性:driveletter:返回當(dāng)前驅(qū)動(dòng)器字母號(hào) A CPath:當(dāng)前的驅(qū)動(dòng)器符號(hào)A: C:Rootf

25、older:根文件夾表示A: C:Drivetype:驅(qū)動(dòng)器類型如光盤,硬盤:驅(qū)動(dòng)器分驅(qū)類型IsReady:驅(qū)動(dòng)器是否已準(zhǔn)備好,準(zhǔn)備好為True Totalsize:總空間AvailableSpace(Free):可用空間Sharename:共享名第五十頁(yè),共八十頁(yè)。文本文件的讀寫(textstream對(duì)象)需要使用textstream對(duì)象此對(duì)只能通過(guò)Set (“文件”)方法獲得屬性、方法: p148第五十一頁(yè),共八十頁(yè)。Aspupload組件第三方組件下載安裝使用Set upload=server.createobject(“persits.upload.1”)可以上傳文件還以上傳一些表單元

26、素值,作為上傳文件附以說(shuō)明文字屬性:Setmaxsize:設(shè)置上傳文件的最大字節(jié)數(shù)Overwritefiles:設(shè)置能否覆蓋文件true覆蓋第五十二頁(yè),共八十頁(yè)。方法:Save:將文件上傳,并保存在某路徑Files:獲取上傳的文件的對(duì)象Form:獲取上傳的表單元素的對(duì)象文件對(duì)象的屬性:Path:上傳后文件所在的路徑Size:上傳后文件的大小,單位為字節(jié)Name:上傳的文件在表單中的名字上傳的表單對(duì)象的屬性 name:上傳的表單元素的名字Size:上傳的表單元素的值第五十三頁(yè),共八十頁(yè)。ADO對(duì)象概述Asp訪問(wèn)數(shù)據(jù)庫(kù)的方法1、ODBC(開放式數(shù)據(jù)庫(kù)連接):ODBC是由mircrosoft提出的用

27、于訪問(wèn)數(shù)據(jù)庫(kù)的統(tǒng)一接口,目前已被業(yè)界公認(rèn)為一種訪問(wèn)數(shù)據(jù)的標(biāo)準(zhǔn)。ODBC是基于SQL語(yǔ)言的它將所有對(duì)數(shù)據(jù)庫(kù)的底層操作全部隱藏在其驅(qū)動(dòng)程序內(nèi)核中,向訪問(wèn)網(wǎng)絡(luò)數(shù)據(jù)庫(kù)的應(yīng)用程序提供了一種通用的語(yǔ)言,只要系統(tǒng)中相應(yīng)的odbc驅(qū)動(dòng)程序,任何程序都可以通odbc驅(qū)動(dòng)程序操縱對(duì)應(yīng)的數(shù)據(jù)庫(kù)。它可以訪問(wèn)sql access數(shù)據(jù)庫(kù)。2、OLE DB(對(duì)象鏈接和嵌入數(shù)據(jù)庫(kù)):是一種為適應(yīng)數(shù)據(jù)庫(kù)技術(shù)迅速發(fā)展而開發(fā)的新一代數(shù)據(jù)訪問(wèn)編程接口。Oledb 比odbc使用更簡(jiǎn)單,效率高第五十四頁(yè),共八十頁(yè)。ADO:是ASP中最重要內(nèi)置組件之一,對(duì)數(shù)據(jù)庫(kù)的訪問(wèn)就是通過(guò)ADO來(lái)完成的。見p-170圖7-1第五十五頁(yè),共八十頁(yè)。AD

28、O中的對(duì)象和數(shù)據(jù)集合ADO中的對(duì)象和數(shù)據(jù)集合Connection:連接對(duì)象,用于創(chuàng)建ASP程序和數(shù)據(jù)源之間的連接創(chuàng)建connection對(duì)象:Set conn=server.createobject(“adodb.connection”)Open 方法:(1)、設(shè)置過(guò)的數(shù)據(jù)源(2)、沒設(shè)置過(guò)的數(shù)據(jù)源第五十六頁(yè),共八十頁(yè)。Connection對(duì)象通過(guò)ODBC連接ACCESS數(shù)據(jù)庫(kù)語(yǔ)法:(1)、設(shè)置數(shù)據(jù)源Set conn.servercreatobject(“adodb.connection”)Set conn.open “dsn=數(shù)據(jù)源;uid=;pwd=;”(2)、沒設(shè)置數(shù)據(jù)源Set conn

29、.open ”driver=mircrosoft access driver (*.mdb);dbq=” & server.mappth(“”) & “數(shù)據(jù)庫(kù)名;uid=;pwd=;”第五十七頁(yè),共八十頁(yè)。通過(guò)OLE DB連接Access數(shù)據(jù)庫(kù)Conn.open “provider=microsoft.jet.OLEDB.4.0;Data source=“& server.mappth(“”) & “數(shù)據(jù)庫(kù)名”Execute方法:能夠執(zhí)行指定的查詢、SQL語(yǔ)句等操作以兩種格式:對(duì)于沒有返回結(jié)果的命令格式Conn.execute sql,recordesaffected,options第五十八頁(yè)

30、,共八十頁(yè)。說(shuō)明:Sql:包含要執(zhí)行的SQL語(yǔ)句、存儲(chǔ)過(guò)程RecordsAffeted:變量,表示執(zhí)行指定的操作所影響的記錄數(shù)目。只有當(dāng)執(zhí)行insert,update,delete時(shí)只參數(shù)有效。Option參數(shù):有利于提高程序執(zhí)行效率。告訴系統(tǒng)這是一個(gè)什么類型的字符串。具體參數(shù)見p-179表7-7Adovbs.inc:option參數(shù)取值為常量時(shí)則需包含此文件。第五十九頁(yè),共八十頁(yè)。使用OLE連接access數(shù)據(jù)庫(kù)第六十頁(yè),共八十頁(yè)。Connection對(duì)象的屬性Connectionstring:連接字符串Connectiontimeout:默認(rèn)15秒如果想讓執(zhí)行時(shí)沒有時(shí)間限制,則將其值設(shè)置為

31、0 Commandtimeout:默認(rèn)30秒,如果想讓執(zhí)行Execute方法時(shí)沒有時(shí)間限制,則只需將其值設(shè)置為0 Provider:設(shè)置connection對(duì)象的提供者M(jìn)ode:設(shè)置訪問(wèn)權(quán)限第六十一頁(yè),共八十頁(yè)。State:取得connection對(duì)象的狀態(tài),0關(guān)閉1打開第六十二頁(yè),共八十頁(yè)。第六十三頁(yè),共八十頁(yè)。Command對(duì)象使用Command 對(duì)象的步驟:當(dāng)在 ASP 頁(yè)面中使用 Command 對(duì)象處理數(shù)據(jù)時(shí),應(yīng)首先設(shè)置命令類型、命令文本以及相關(guān)的活動(dòng)數(shù)據(jù)庫(kù)連接等,并通過(guò) Parameter 對(duì)象傳遞命令參數(shù),然后通過(guò)調(diào)用 Execute 方法來(lái)執(zhí)行 SQL 語(yǔ)句或調(diào)用存儲(chǔ)過(guò)程,以完

32、成數(shù)據(jù)庫(kù)記錄的檢索、添加、更改和刪除任務(wù)。其步驟如下:1、使用 ActiveConnection 屬性設(shè)置相關(guān)的數(shù)據(jù)庫(kù)連接;2、使用 CommandType 屬性設(shè)置命令類型;3、使用 CommandText 屬性定義命令(例如SQL語(yǔ)句)的可執(zhí)行文本;4、使用 CommandTimeout 屬性設(shè)置命令超時(shí)時(shí)間;5、使用 Execute 方法執(zhí)行命令。第六十四頁(yè),共八十頁(yè)。三、Command 對(duì)象的方法Execute該方法執(zhí)行在 CommandText 屬性中指定的查詢。語(yǔ)法格式分為以下兩種形式。 1、有返回值Set recordset=command.Execute(RecordsAffe

33、cted,Parameters,Options) 2、無(wú)返回值:command.Execute RecordsAffected,Parameters,Options 第六十五頁(yè),共八十頁(yè)。Parameters數(shù)據(jù)集合如果要利用傳參數(shù)的方法,則按以下步驟1、建立一個(gè)parameter對(duì)象Set name=comm.createparameters(名字,字段類型,parameter對(duì)象的類型,大小,值)例:Set name=comm.createparameters(“name”,advarchar,1,20,”張三”)或 name.value=“張三”第六十六頁(yè),共八十頁(yè)。2、將此參數(shù)加入到p

34、arameters集合中Comm.parameters.append parameters對(duì)象名3、comm.execute注意:使用parameters對(duì)象時(shí),要將adovbs.inc文件包含進(jìn)來(lái)第六十七頁(yè),共八十頁(yè)。cmd.CommandText=“INSERT INTO 員工基本情況表(員工姓名,所在部門,家庭住址,家庭電話,Email) values(?,?,?,?,?)”創(chuàng)建五個(gè)Parameter對(duì)象set PrmName=cmd.CreateParameter(“員工姓名”,adVarChar,adParamInput,10)set PrmDepartment=cmd.Create

35、Parameter(“所在部門”,adVarChar,adParamInput,10)set PrmAddr=cmd.CreateParameter(“家庭住址”,adVarChar,adParamInput,12)set PrmTel=cmd.CreateParameter(“家庭電話”,adVarChar,adParamInput,15)set PrmEmail=cmd.CreateParameter(“Email”,adVarChar,adParamInput,20)將parameter對(duì)象添加到Parameters集合中。第六十八頁(yè),共八十頁(yè)。使用表單值設(shè)置參數(shù)值PrmName.Val

36、ue=Request.Form(txtName)PrmDepartment.Value=Request.Form(txtDepartment)PrmAddr.Value=Request.Form(txtAddr)PrmTel.Value=Request.Form(txtTel)PrmEmail.Value=Request.Form(txtEmail)cmd.Parameters.Append prmNamecmd.Parameters.Append prmDepartmentCmd.Parameters.Append prmAddrCmd.Parameters.Append prmTelCmd

37、.Parameters.Append prmEmail執(zhí)行INSERT插入命令cmd.Execute第六十九頁(yè),共八十頁(yè)。例:用command對(duì)象完成注冊(cè)頁(yè)面,將注冊(cè)頁(yè)面的信息存入數(shù)據(jù)庫(kù)中。第七十頁(yè),共八十頁(yè)。Command 對(duì)象的應(yīng)用實(shí)例 1、這是一個(gè)簡(jiǎn)單的員工基本情況管理系統(tǒng),其功能有:1)、添加員工資料;2)、更改員工資料;3)、刪除員工資料,檢索員工資料。它包含著七個(gè)頁(yè)面和一個(gè)數(shù)據(jù)庫(kù)。分別為: 1)、主頁(yè)面:index.asp 2)、添加數(shù)據(jù)頁(yè)面:add.htm 3)、保存添加數(shù)據(jù)頁(yè)面:add.asp 4)、更改數(shù)據(jù)頁(yè)面:Update.asp 5)、保存更改數(shù)據(jù)頁(yè)面:Update1.asp

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論