asp內(nèi)置對(duì)象-文檔資料_第1頁(yè)
asp內(nèi)置對(duì)象-文檔資料_第2頁(yè)
asp內(nèi)置對(duì)象-文檔資料_第3頁(yè)
asp內(nèi)置對(duì)象-文檔資料_第4頁(yè)
asp內(nèi)置對(duì)象-文檔資料_第5頁(yè)
已閱讀5頁(yè),還剩66頁(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、1Asp主要內(nèi)置對(duì)象2Response對(duì)象的方法和屬性對(duì)象的方法和屬性 Response的直譯是“響應(yīng)”,所謂響應(yīng),對(duì)ASP程序來(lái)說(shuō),就是把數(shù)據(jù)傳送給客戶端的瀏覽器。,我們已經(jīng)使用過(guò)Response對(duì)象的Write方法(Response.Write)輸出數(shù)據(jù)到瀏覽器,例如:Response.Write “看到這個(gè)測(cè)試網(wǎng)頁(yè),就說(shuō)明你的ASP系統(tǒng)已能正常工作了!。3ASP的Response對(duì)象提供的常用方法和屬性 Write方法輸出數(shù)據(jù)到瀏覽器。 Redirect方法改變?yōu)g覽的網(wǎng)頁(yè)。 End方法結(jié)束數(shù)據(jù)的輸出。 Buffer屬性是否設(shè)置緩沖區(qū)。 Clear方法清除緩沖區(qū)內(nèi)的數(shù)據(jù)。 Flush方法輸

2、出緩沖區(qū)內(nèi)的數(shù)據(jù)。 IsClientConnected屬性瀏覽器是否還在聯(lián)機(jī)(網(wǎng))中。4 Response.Write方法 使用Response對(duì)象提供的Write方法可以傳送數(shù)據(jù)到瀏覽器,其語(yǔ)法如下: Response.Write displaydata (1)Response.Write方法傳送的數(shù)據(jù)為自由類型(Variant)。如果傳送的是字符串,則必須使用雙引號(hào)將該字符串包括起來(lái);若字符串中含有雙引號(hào),重復(fù)雙引號(hào)一次即可。5 要輸出: % Response.Write test %6 (2)使用單獨(dú)一行Response.Write方法傳送數(shù)據(jù)至客戶端,如果超過(guò)1022個(gè)字符,將會(huì)出現(xiàn)錯(cuò)

3、誤。如果要傳送超過(guò)1022個(gè)字符的字符串,可以分成多行Response.Write輸出,或者先將字符串存放到變量中,再用Response.Write將變量輸出。7 (3)如果在之間只有一行Response.Write語(yǔ)句,則可以將它簡(jiǎn)寫成,例如下面兩個(gè)語(yǔ)句的意義是相同的: 8 編寫一個(gè)ASP程序c4_1_2.asp,使用Response.Write方法,將某學(xué)生的語(yǔ)文、數(shù)學(xué)、英語(yǔ)成績(jī)(假設(shè)分別為84、96、89)及教師評(píng)語(yǔ)(平均成績(jī)?cè)?0分以上,評(píng)語(yǔ)“成績(jī)優(yōu)良,請(qǐng)?jiān)俳釉賲?!”;否則評(píng)語(yǔ)“別泄氣,要繼續(xù)努力哦”)傳送到客戶端的瀏覽器,如圖4-2所示。9=80 Then word=成績(jī)優(yōu)良,請(qǐng)?jiān)俳?/p>

4、再厲!Else word=別泄氣,請(qǐng)繼續(xù)努力哦!End If%語(yǔ)文成績(jī):數(shù)學(xué)成績(jī):英語(yǔ)成績(jī):教師評(píng)語(yǔ):10 2. Response.Redirect方法 Response對(duì)象的Redirect方法可以讓我們將目前的網(wǎng)頁(yè)轉(zhuǎn)移到另一個(gè)網(wǎng)頁(yè),語(yǔ)法如下: Response.Redirect URL 產(chǎn)生錯(cuò)誤 (1)Response.Redirect方法必須使用在未輸出任何數(shù)據(jù)到瀏覽器之前,否則會(huì)出現(xiàn)錯(cuò)誤。在下面的程序中: 錯(cuò)誤11 (2)使用Redirect方法的優(yōu)點(diǎn)是,可以把內(nèi)容比較復(fù)雜的網(wǎng)頁(yè)分成幾個(gè)子網(wǎng)頁(yè),甚至可以存放在不同的文檔、目錄或者Web Server里,然后由主網(wǎng)頁(yè)來(lái)判斷當(dāng)時(shí)的情況,以決

5、定跳轉(zhuǎn)到哪個(gè)子網(wǎng)頁(yè)。12 【實(shí)驗(yàn)】 編寫程序c4_1_3.asp,可以根據(jù)今天是星期幾轉(zhuǎn)移到同一目錄下的對(duì)應(yīng)網(wǎng)頁(yè)(星期日轉(zhuǎn)移到00.htm、星期一轉(zhuǎn)移到01.htm星期六轉(zhuǎn)移到06.htm)。13 14 Response.End 方法的主要作用是告訴瀏覽器數(shù)據(jù)已經(jīng)下載完畢,另外使用它也可以讓IIS/PWS不再解讀后面的HTML標(biāo)記和ASP程序,從而達(dá)到終止.asp程序執(zhí)行的目的。例如,在下面的程序中:15 % Response.Write大家好! Response.End Response.Write我是小明 % Response.End后面的那個(gè)Response.Write語(yǔ)句將不被執(zhí)行。1

6、6 【實(shí)驗(yàn)】 使用Response.End方法編寫使用期限為2001/12/31的網(wǎng)頁(yè)c4_1_4.asp,一般情況下網(wǎng)頁(yè)中顯示“歡迎光臨!”;如果上網(wǎng)者在使用期限過(guò)后瀏覽該網(wǎng)頁(yè),則顯示“對(duì)不起,本網(wǎng)頁(yè)已過(guò)使用期限!”;此外,設(shè)置網(wǎng)頁(yè)的開放時(shí)間為8:0020:00,若在其他時(shí)間訪問(wèn)它,則顯示“對(duì)不起,本網(wǎng)頁(yè)的開放時(shí)間為8:00至20:00!”。17 #2001/12/31# Then Response.Write對(duì)不起,本網(wǎng)頁(yè)已過(guò)使用期限! Response.End End If If Time#20:00:00# Then Response.Write對(duì)不起,本網(wǎng)頁(yè)的開放時(shí)間為8:00至20

7、:00! Response.End End If % Welcome! 歡迎光臨! 18 (1)調(diào)用Response.Write方法可以將要輸出的數(shù)據(jù)下載給瀏覽器,但我們也可以將Response.Buffer的屬性值設(shè)置為True,要求IIS/PWS先將要輸出的數(shù)據(jù)寫到緩沖區(qū)(buffer),然后等到以下幾種情況出現(xiàn)時(shí),再將緩沖區(qū)內(nèi)的數(shù)據(jù)下載給瀏覽器: IIS/PWS解讀完ASP程序時(shí); 過(guò)程調(diào)用了Response.End方法時(shí); 過(guò)程調(diào)用了Response.Flush方法時(shí)。 需要強(qiáng)調(diào)的是,將Response.Buffer的屬性值設(shè)置為True,必須在沒(méi)有任何數(shù)據(jù)或者HTML標(biāo)記輸出到瀏覽器

8、之前進(jìn)行;所以我們最好像上面程序中所做的那樣,將“Response.Buffer =True”放在ASP程序的最前面。19 4輸出緩沖區(qū)的設(shè)置 【實(shí)驗(yàn)】 將使用Response.Write方法輸出的數(shù)據(jù)“大家好!我是小明?!睂懙骄彌_區(qū)(buffer),然后使用Response.Flush方法將緩沖區(qū)內(nèi)的數(shù)據(jù)下載給瀏覽器。 【程序】 20 (2)調(diào)用Response.End、Response.Flush方法可以強(qiáng)制將緩沖區(qū)內(nèi)的數(shù)據(jù)輸出,此外,也可以調(diào)用Response.Clear方法中途取消(清除)緩沖區(qū)內(nèi)的數(shù)據(jù),請(qǐng)看以下例子: 其中,調(diào)用Response.Clear方法將緩沖區(qū)內(nèi)的數(shù)據(jù)“大家好

9、!我是小明。”、“取消緩沖區(qū)內(nèi)的數(shù)據(jù)”一并清除。(客戶端看不到東西)21一個(gè)例子 一個(gè)查詢所屬的星座網(wǎng)頁(yè):一個(gè)網(wǎng)頁(yè),輸入生日,提交后,輸出所屬的星座。22 Form 對(duì)象對(duì)象 Form 對(duì)象代表一個(gè) HTML 表單。 在 HTML 文檔中 每出現(xiàn)一次,F(xiàn)orm 對(duì)象就會(huì)被創(chuàng)建。23 表單的基本語(yǔ)法表單的基本語(yǔ)法 . . *=GET, POST 24 標(biāo)記的action屬性:等于xx.asp,表示按下“提交數(shù)據(jù)”按鈕之后,服務(wù)器端處理這個(gè)輸入表單的程序是xx.asp。 標(biāo)記的method屬性:等于POST,瀏覽器會(huì)等待Server來(lái)讀取數(shù)據(jù);若設(shè)置成GET,則按下“提交數(shù)據(jù)”按鈕后,表單上的數(shù)據(jù)

10、會(huì)附在網(wǎng)址之后一起送到Server。為此,在設(shè)計(jì)含有密碼文本框的表單時(shí),建議您將表單的method屬性設(shè)置為POST,如果使用GET,則在瀏覽器的網(wǎng)址欄上可以清楚地看到輸入的密碼 .將表單的傳送方式設(shè)置為method=POST,這種方式適合于傳送較大量的數(shù)據(jù)(數(shù)據(jù)長(zhǎng)度可大于256 bytes) 25 表單中提供給用戶的輸入形式表單中提供給用戶的輸入形式 *=text, password, checkbox, radio, image, hidden, submit, reset *=Symbolic Name for CGI script 26 隱藏表單的元素隱藏表單的元素 Here is a

11、 hidden element. 27Request Request是ASP里的一個(gè)內(nèi)部對(duì)象,用于獲取HTTP請(qǐng)求中傳遞的任意信息(如頭信息、表單數(shù)據(jù)、cookies等等)。所以這是在ASP里面最常用的內(nèi)部對(duì)象,常用來(lái)獲得GET方式提交的數(shù)據(jù)(Request.QueryString)、表單POST提交的數(shù)據(jù)(Request. Form)和Cookies Request.Cookies)。 28 集合 ClientCertificate包含了存儲(chǔ)于客戶證書中的域值(field values) Cookies包含了 HTTP 請(qǐng)求中發(fā)送的所有 cookie 值 Form包含了使用 post 方法由

12、表單發(fā)送的所有的表單(輸入)值 QueryString包含了 HTTP 查詢字符串中所有的變量值 ServerVariables包含了所有的服務(wù)器變量值29 屬性 TotalBytes返回在請(qǐng)求正文中客戶端所發(fā)送的字節(jié)總數(shù) 方法 BinaryRead取回作為 post 請(qǐng)求的一部分而從客戶端送往服務(wù)器的數(shù)據(jù),并把它存放到一個(gè)安全的數(shù)組之中。30 FirstName: LastName: 31 使用Request對(duì)象的Form集合可以取得客戶端表單各字段所輸入的數(shù)據(jù),語(yǔ)法如下: Request.Form (fieldname) strFirstName = Request.Form(“First

13、Name”) strLastName = Request.Form(“LastName”)32 Request.Form(fieldname)中的Form可以省略不寫,將此語(yǔ)句簡(jiǎn)寫為Request (fieldname)。Request.Form(fieldname) strFirstName = Request (“FirstName”) strLastName = Request (“LastName”) 33 也可使用窗體中控件的整型索引,索引的范圍從在HTML中第一個(gè)定義的控件開始,然后根據(jù)定義的順序排序: Request.Form(index) 其中index代表該數(shù)據(jù)在Form集合

14、中的序號(hào). strFirstName = Request.Form(1) strLastName = Request.Form(2)34 然而,后面的這種以整型為索引的技術(shù)不推薦使用,因?yàn)橐坏┯蠬TML中的控件發(fā)生了變化,或者插入一個(gè)新的控件,則ASP代碼將得到錯(cuò)誤的值。進(jìn)一步而言,對(duì)于閱讀代碼的人來(lái)講,極容易混淆。35 遍歷一個(gè)ASP集合 每個(gè)集合提供一個(gè)Count屬性,返回的是集合中條目數(shù)量??赏ㄟ^(guò)使用一個(gè)整型索引使用Count屬性來(lái)遍歷。 For intLoop=1 To Request.Form.Count Response.Write Request.Form(intLoop) &a

15、mp; “” Next36 在某些情況下,ASP集合中的各個(gè)成員可能不止一個(gè)值,這種情況發(fā)生在HTML定義中有幾個(gè)控件有相同Name屬性時(shí)。例如: FORM ACTION=”Show_request.asp” METHOD=”POST” INPUT TYPE=”TEXT” NAME=”O(jiān)therHobby” INPUT TYPE=”TEXT” NAME=”O(jiān)therHobby” INPUT TYPE=”TEXT” NAME=”O(jiān)therHobby” INPUT TYPE=”SUBMIT” VALUE=”Send” /FORM37 為了能夠在這種情況下,訪問(wèn)單個(gè)值,可以用復(fù)雜一些的代碼: For

16、 Each objItem In Request.Form If Request.Form(objItem).Count 1 Then Response.Write objItem & “:BR” For intLoop = 1 To Request.Form(objItem).CountResponse.Write “Subkey” & intLoop & “value = “& Request.Form(objItem) (intLoop) & “BR”Next Else Response.Write objItem & “ = ” &

17、; Request.Form(objItem) & “BR” End If Next38 2. Request.QueryString集合集合 提示:提示:QueryString集合的功能和Form差不多,唯一的差別在于前者可以直接取得加在網(wǎng)址后面的附加參數(shù),這些參數(shù)通常以問(wèn)號(hào)來(lái)連接,如“http:/?”。 /asp/ttt.asp?Name =李紅&S1=86&S2=97” 39 ?Name = 李紅李紅 & S1=86 & S2=97 ?表示后面是附帶的數(shù)據(jù), 數(shù)據(jù)之間使用&來(lái)隔開40 我們用Request對(duì)象能

18、指定獲取某個(gè)特定方式提交的數(shù)據(jù)。比如我們用這段代碼獲得通過(guò)POST提交的數(shù)據(jù)lake2的值:request.Form(“l(fā)ake2”); 而request.queryString(CSDN)獲得GET方式提交的CSDN的值。 對(duì)于獲取HTTP數(shù)據(jù),ASP還給了我們一個(gè)更簡(jiǎn)單的方法:request(key),即直接使用request而不指定數(shù)據(jù)集合。此時(shí)ASP會(huì)依次在QueryString、From、Cookies、ServerVariables、ClientCertificate、Browser中檢查匹配的數(shù)據(jù),若發(fā)現(xiàn)則返回?cái)?shù)據(jù)。41 Request.ServerVariables來(lái)取得服務(wù)器

19、端的環(huán)境信息,語(yǔ)法如下: Request.ServerVariable(ServerEnviVariablname) 其中ServerEnviVariablname參數(shù)是指服務(wù)器端的環(huán)境變量名稱(共有20多項(xiàng)),下面表列出的是一些常用的環(huán)境變量。42環(huán)境變量名稱用環(huán)境變量名稱用 途途Auth_Password取得客戶端所傳來(lái)的認(rèn)證使用者密碼。Auth_User取得客戶端所傳來(lái)的認(rèn)證使用者帳號(hào)。Gateway_Interface傳回服務(wù)器端的CGI版本。Content_Type傳回客戶端文件傳送的形式。Local_Addr傳回服務(wù)器端計(jì)算機(jī)的IP地址。Path_Info取得網(wǎng)頁(yè)的虛擬路徑。Que

20、ry_String取得放在HTTP:/后以?開頭的字符串?dāng)?shù)據(jù)。Remote_Addr取得遠(yuǎn)程主機(jī)的IP地址。Remote_Host取得遠(yuǎn)程主機(jī)的名稱。Remote_User取得遠(yuǎn)程的使用者名稱。Request_Method取得HTTP的請(qǐng)求方式如:POST、HEAD、GET。Script_Name取得所執(zhí)行的ASP程序的路徑與文件名。Server_Name傳回服務(wù)器的計(jì)算機(jī)名稱、DNS別名或IP地址。Server_Port取得服務(wù)器的連接口(Port)號(hào)碼。Server_Protocol取得HTTP的版本。Server_Software取得服務(wù)器端的服務(wù)器名稱和版本。URL取得目前網(wǎng)頁(yè)的存儲(chǔ)地

21、址(虛擬路徑)。43 服務(wù)器端計(jì)算機(jī)的IP地址: 本網(wǎng)頁(yè)所在的虛擬路徑: 4445Server對(duì)象對(duì)象 Server對(duì)象是ASP中一個(gè)很重要的對(duì)象,許多高級(jí)功能都是靠它來(lái)完成的。它提供了對(duì)Active Server Pages對(duì)和方法的使用,主要介紹幾個(gè)常用的方法。 MapPath方法方法 CreateObject方法方法 46 MapPath方法方法 該方法返回指定文件的相對(duì)路徑或物理路返回指定文件的相對(duì)路徑或物理路徑徑。若Path以一個(gè)(/)或()開始,則MapPath方法返回路徑時(shí)將Path視為完整的虛擬路徑。若Path不是以斜杠開始,則MapPath方法返回同.asp文件中已有的路徑相

22、對(duì)的路徑。如:test.asp文件位于C:inetpubwwwrootmyhome下,C:inetpubwwwroot為服務(wù)器的宿主目錄,而test.asp包含如下腳本:47 輸出:C:inetpubwwwrootmyhometest.asp要得到這個(gè)結(jié)果還可以用如下方法: 48 CreateObject方法方法 這個(gè)方法是Server對(duì)象中最重要的方法,在后面可以看到,許多功能都不得不用到它。它用于創(chuàng)建已注冊(cè)到服務(wù)器上的創(chuàng)建已注冊(cè)到服務(wù)器上的ActiveX組件能夠使擴(kuò)展組件能夠使擴(kuò)展ActiveX的能力的能力。用于創(chuàng)建服務(wù)器端的方法如下:Server.CreateObject(“Compon

23、entName”)用來(lái)創(chuàng)建的組件可以是所有ActiveX能使用的內(nèi)置組件,實(shí)際上是存在于服務(wù)器的所有ActiveX組件。例如: Set fs = CreateObject(Scripting.FileSystemObject)49Application對(duì)象:對(duì)象: Application對(duì)象是個(gè)應(yīng)用程序級(jí)的對(duì)象,用用來(lái)在所有用戶間共享信息來(lái)在所有用戶間共享信息,并可以在并可以在Web應(yīng)用程序運(yùn)行期間持久地保持?jǐn)?shù)據(jù)。應(yīng)用程序運(yùn)行期間持久地保持?jǐn)?shù)據(jù)。Application的屬性:方法如下: Application對(duì)象沒(méi)有內(nèi)置的屬性,但是我們可以自行創(chuàng)建其屬性。 50 其實(shí)大部分Applicatio

24、n變量都存放在Contents集合中,當(dāng)你創(chuàng)建一個(gè)新的Application變量時(shí),其實(shí)就是在Contents集合中添加了一項(xiàng)。下面兩個(gè)腳本是等效的: 或 % Application.contents(greeting)=hello! 51 你是第位訪客52 Application的方法: Application的方法只有兩個(gè)方法:一個(gè)是Lock,另一個(gè)是Unlock。其中Lock方法用于保證方法用于保證同一時(shí)刻只能一個(gè)用戶對(duì)同一時(shí)刻只能一個(gè)用戶對(duì)Application操作。操作。Unlock則用于取消則用于取消Lock方法的限制。方法的限制。如: 53Session對(duì)象對(duì)象 Session其

25、實(shí)指的就是訪問(wèn)者從到達(dá)某個(gè)特訪問(wèn)者從到達(dá)某個(gè)特定主頁(yè)到離開為止的那段時(shí)間定主頁(yè)到離開為止的那段時(shí)間。每一訪問(wèn)者都會(huì)單獨(dú)獲得一個(gè)Session。在Web應(yīng)用程序中,當(dāng)一個(gè)用戶訪問(wèn)該應(yīng)用時(shí),Session類型的變量可以供這個(gè)用戶在該供這個(gè)用戶在該Web應(yīng)用的所有頁(yè)面中共享數(shù)據(jù)應(yīng)用的所有頁(yè)面中共享數(shù)據(jù);如果另一個(gè)用戶也同時(shí)訪問(wèn)該Web應(yīng)用,他也擁有自己的Session變量,但兩個(gè)用戶之間無(wú)法通過(guò)Session變量共享信息,而Application類型的變量則可以實(shí)現(xiàn)站點(diǎn)多個(gè)用戶之間在所有頁(yè)面中共享信息。 54 與Application一樣,一個(gè)被定義為Session類型的數(shù)組只能將整個(gè)數(shù)組作為一個(gè)對(duì)

26、象,用戶不能直接改變Session數(shù)組中某個(gè)元素的值。為了創(chuàng)建一個(gè)Session數(shù)組,需先定義一個(gè)普通的數(shù)組,并對(duì)它的每一個(gè)元素賦初值,最后把它定義為一個(gè)Session數(shù)組。如:55 % Session(“test)=“hhh” dim array()array=array(jeff,zhu,male)Session(info)=array Response.write Session(“test) Response.write Session(info)(0) &-Response.write Session(info)(1) &-Response.write Session

27、(info)(2) &%56 你是第 刷新57 1、SessionID屬性屬性 該屬性返回當(dāng)前會(huì)話的唯一標(biāo)志,為每一個(gè)Session分配不同的編號(hào)。如果要實(shí)現(xiàn)的功能:當(dāng)一個(gè)會(huì)員登錄后正在看此模塊時(shí),另一個(gè)人用同樣的會(huì)員名登錄,就不能瀏覽這個(gè)模塊。也就是說(shuō)一個(gè)會(huì)員名同時(shí)只能一個(gè)人瀏覽此模塊。我們通過(guò)用會(huì)員名(假設(shè)為UserID,唯一)和SessionID來(lái)實(shí)現(xiàn)了控制。當(dāng)會(huì)員登錄時(shí),給這個(gè)會(huì)員一個(gè)Session記錄登錄狀態(tài)如:Session(Status)=Logged,同時(shí)把這個(gè)會(huì)員的Session.SessionID寫入數(shù)據(jù)庫(kù)。當(dāng)他要瀏覽此模塊時(shí),先判斷其是否登錄,若已經(jīng)登錄再判斷它的

28、SessionID是否與數(shù)據(jù)庫(kù)記錄的相同,如果不同則不能訪問(wèn)。這樣,當(dāng)另一個(gè)用戶用相同的會(huì)員名登錄時(shí),那么數(shù)據(jù)庫(kù)中記錄的就是新的SessionID,前者訪問(wèn)此模塊時(shí)就不能通過(guò)檢查。這就實(shí)現(xiàn)了一個(gè)會(huì)員名同時(shí)只能一個(gè)人瀏覽某個(gè)模塊。這個(gè)功能在一些收費(fèi)網(wǎng)站有很有特別作用,它防止了一個(gè)會(huì)員名給多個(gè)人瀏覽的問(wèn)題,為公司保障了利益。58 TimeOut屬性屬性 該屬性用來(lái)定義用戶Session對(duì)象的時(shí)限。如果用戶在規(guī)定的時(shí)間內(nèi)沒(méi)有刷新網(wǎng)頁(yè),則Session對(duì)象就會(huì)終止。一般默認(rèn)為20分鐘。59 3、Abandon方法方法 該方法是Session對(duì)象的唯一方法,可以清除Session對(duì)象,用來(lái)消除用戶的Se

29、ssion對(duì)象并釋放其所占的資源。如: 60ASP包含文件包含文件 使用可以在一個(gè)ASP程序中包含其它文本文件。當(dāng)同樣的內(nèi)容被多個(gè)網(wǎng)頁(yè)所使用時(shí),我們可以將其寫成一個(gè)單獨(dú)的文件,然后使用將該文件包含到ASP網(wǎng)頁(yè)中。filename為文件名稱,必須在名稱中指定文件的相對(duì)路徑。要注意的是,不可以包括在符號(hào)中。61 62Global.asa Global.asa 文件文件 Global.asa 文件是一個(gè)可選的文件,它可包含可被 ASP 應(yīng)用程序中每個(gè)頁(yè)面訪問(wèn)的對(duì)象、變量以及方法的聲明。所有合法的瀏覽器腳本都能在 Global.asa 中使用。 Global.asa 文件可包含下列內(nèi)容:文件可包含下列

30、內(nèi)容: Application 事件 Session 事件 聲明 TypeLibrary 聲明 #include 命令 注釋:注釋:Global.asa 文件須存放于 ASP 應(yīng)用程序的根目錄中,且每個(gè)應(yīng)用程序只能有一個(gè) Global.asa 文件。63 首先.asa是文件后綴名,它是Active Server Application的首字母縮寫。Global.asa文件可以管理在ASP應(yīng)用中兩個(gè)非??量痰膶?duì)象:Application、Session。 關(guān)于Global.asa文件最常見(jiàn)的錯(cuò)誤概念是它能為一般的使用的函數(shù)和子程序用作書庫(kù)。Global.asa文件僅能用于創(chuàng)建對(duì)象的引用和俘獲啟動(dòng)

31、,以及結(jié)束Application對(duì)象和Session對(duì)象。 64 Global.asa 中的事件中的事件 在 Global.asa 中,我們可以告知 application 和 session 對(duì)象在啟動(dòng)和結(jié)束時(shí)做什么事情。完成此項(xiàng)任務(wù)的代碼被放置在事件操作器中。Global.asa 文件能包含四種類型的事件: Application_OnStart - 此事件會(huì)在首位用戶從 ASP 應(yīng)用程序調(diào)用第一個(gè)頁(yè)面時(shí)發(fā)生。此事件會(huì)在 web 服務(wù)器重起或者 Global.asa 文件被編輯之后發(fā)生。Session_OnStart 事件會(huì)在此事件發(fā)生之后立即發(fā)生。 Session_OnStart - 此

32、事件會(huì)在每當(dāng)新用戶請(qǐng)求他或她的在 ASP 應(yīng)用程序中的首個(gè)頁(yè)面時(shí)發(fā)生。 Session_OnEnd - 此事件會(huì)在每當(dāng)用戶結(jié)束 session 時(shí)發(fā)生。在規(guī)定的時(shí)間(默認(rèn)的事件為 20 分鐘)內(nèi)如果沒(méi)有頁(yè)面被請(qǐng)求,session 就會(huì)結(jié)束。 Application_OnEnd - 此事件會(huì)在最后一位用戶結(jié)束其 session 之后發(fā)生。典型的情況是,此事件會(huì)在 Web 服務(wù)器停止時(shí)發(fā)生。此子程序用于在應(yīng)用程序停止后清除設(shè)置,比如刪除記錄或者向文本文件寫信息。65 Global.asa 文件可能類似這樣: sub Application_OnStart some code end sub sub Application_OnEnd some code end sub sub Session

溫馨提示

  • 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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)論