WEB程序設計課件-第5章-ASP程序設計_第1頁
WEB程序設計課件-第5章-ASP程序設計_第2頁
WEB程序設計課件-第5章-ASP程序設計_第3頁
WEB程序設計課件-第5章-ASP程序設計_第4頁
WEB程序設計課件-第5章-ASP程序設計_第5頁
已閱讀5頁,還剩25頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

第5章ASP程序設計

1ASP概述2ASP的內(nèi)建對象和應用組件3Request對象4Response對象5Session對象6Cookie的應用7Application對象8Server對象9ASP程序設計舉例本章小結ASP〔ActiveServerPages,活動效勞器網(wǎng)頁〕是一種運行于效勞器端的Web應用程序開發(fā)技術,它既不是一種語言,也不是一種開發(fā)工具,而是一種效勞器端的腳本語言環(huán)境。本章將介紹ASP技術的特點及工作原理,并通過實例詳細介紹ASP中的5個常用對象的屬性、方法和事件,使讀者學會利用ASP技術開發(fā)Web應用程序15.1ASP概述

5.1.1ASP的特點ASPActiveServerPages,活動效勞器網(wǎng)頁)ASP的特點全嵌入HTML,與HTML、Script語言完美結合無須手動編譯〔Compling〕或鏈接程序面向?qū)ο蟆睴bjectOriented〕,并可擴展ActiveXServer組件功能存取數(shù)據(jù)庫輕松容易〔使用ADO組件〕存取數(shù)據(jù)庫輕松容易〔使用ADO組件〕可使用任何語言編寫自己的ActivXServer組件無瀏覽器兼容問題程序代碼隱蔽,在客戶端僅可看到由ASP輸出的動態(tài)HTML文件25.1.2ASP的工作原理

ASP技術通過后綴名為.asp的文件來實現(xiàn)當瀏覽器向Web效勞器請求調(diào)用ASP文件時,就啟動了ASPWeb效勞器響應該HTTP請求,調(diào)用ASP引擎,解釋被申請的文件ASP的腳本程序是在效勞器端執(zhí)行35.1.3ASP的運行環(huán)境

安裝IIS信息效勞器操作步驟如下:啟動“添加/刪除程序”應用程序,出現(xiàn)“添加/刪除程序”對話框單擊“添加/刪除Windows組件”按鈕單擊“下一步”按鈕,系統(tǒng)開始安裝安裝完成后,單擊“完成”按鈕,即可結束IIS的安裝過程4設置Web站點設置虛擬目錄在“Internet信息效勞”窗口,右擊“默認Web站點”,選擇“新建”“虛擬目錄”,出現(xiàn)“虛擬目錄創(chuàng)立向?qū)А睂υ捒騿螕簟跋乱徊健卑粹o,在“虛擬目錄創(chuàng)立向?qū)А睂υ捒蛑?,輸入虛擬目錄名book單擊“下一步”按鈕,通過“瀏覽”下拉列表選擇要設置為虛擬目錄的文件夾〔放置ASP文件的文件夾〕單擊“下一步”按鈕,設置虛擬目錄的訪問權限單擊“下一步”按鈕,完成虛擬目錄的設置55.1.4ASP文件的結構

一個ASPWeb頁面可以包含以下4個局部普通HTML文件,用普通Web頁面編程??蛻舳四_本程序代碼,通常用<script>和</script>定界符括起來。效勞器端ASP程序代碼,用<%和%>定界符括起來。Server_SideInclude語句,使用#include語句在Web頁面中嵌入其他Web頁面,其中,<%和%>是標準的ASP程序定界符,而<script>和</script>是客戶端腳本或效勞器端腳本定界符65.2ASP的內(nèi)建對象和應用組件

表5-1ASP的內(nèi)置對象7表5-2ASP的效勞器內(nèi)置組件85.3Request對象

Request對象的主要功能是從客戶端取得信息,包括獲取瀏覽器種類、表單中的數(shù)據(jù)、Cookies中的數(shù)據(jù)和客戶端認證等,語法如下:Request[.數(shù)據(jù)集合|屬性|方法](變量)內(nèi)部對象Request擁有以下5個數(shù)據(jù)集合:Form 取得客戶端表格元素中所填入的信息。QueryString 取回URL請求字符串。ServerVariables 取得效勞器端環(huán)境變量的值。ClientCertificate 從客戶端取得身份驗證的信息。Cookies 取得客戶端瀏覽器的Cookies值95.3.1Form數(shù)據(jù)集合表單是標準HTML文件的一局部,它允許用戶利用表單中的文本框、復選框、單項選擇按鈕、列表框等控件為效勞器端的應用提供初始數(shù)據(jù),用戶通過單擊表單中的命令按鈕提交他們的輸入數(shù)據(jù),其使用語法如下:Request.Form(String參數(shù))[〔索引.計數(shù)〕]5.3.2QueryString數(shù)據(jù)集合QueryString數(shù)據(jù)集合可以利用QueryString環(huán)境變量來獲取客戶請求字符串。一般來講,這個HTTP查詢字符串變量直接定義在超鏈接的URL中,即跟在“?”字符之后,其語法如下:Request.QueryString(變量名稱)[〔索引.計數(shù)〕]105.3.3ServerVariables數(shù)據(jù)集合

表5-3ASP效勞器環(huán)境變量115.3.4ClientCertificate數(shù)據(jù)集合

ClientCertificate數(shù)據(jù)集合從Web瀏覽器發(fā)布的請求中獲取驗證字段其使用語法如下:Request.ClientCertificate(Key[SubField])5.3.5Cookies數(shù)據(jù)集合Cookies數(shù)據(jù)集合用來記錄客戶端信息,它允許用戶檢索在HTTP請求中發(fā)送的Cookie值,其使用語法如下:Request.Cookies(String)[(key)|.attribute]125.3.6TotalBytes屬性

此屬性為只讀屬性,可取回客戶端響應數(shù)據(jù)的字節(jié)數(shù)。其使用語法如下:Counter=Request.TotalBytes5.3.7BinaryRead方法此方法用二進制代碼方式讀取客戶端POST數(shù)據(jù)。其使用語法如下:Variant=Request.BinaryRead(Counter)

13【例5-1】以不同的字體和不同的顏色輸出一段“朋友,你好!”的文字【例5-2】下面是一個用戶登錄的實例,它利用Form數(shù)據(jù)集合從客戶端獲取表單信息【例5-3】通過Request.QueryString數(shù)據(jù)集合獲取客戶端信息【例5-4】用Request對象讀取效勞器環(huán)境變量點擊查看程序點擊查看程序點擊查看程序點擊查看程序145.4Response對象

Response對象的功能與Request對象的功能正好相反,它用于將效勞器端的信息發(fā)送到客戶瀏覽器,包括將效勞器端的數(shù)據(jù)用超文本格式發(fā)送到瀏覽器上,或重定向瀏覽器到另一個URL,或設置Cookie的值Response對象的語法如下:Response.數(shù)據(jù)集合|屬性|方法155.4.1Response對象的方法

Write方法Write方法是Response對象中最常用的一個方法,它可以把信息從效勞器端直接送到客戶端,語法如下:Response.WriteStringRedirect方法Redirect方法引導客戶端瀏覽器立即重定向到程序指定的URL位置,也就是進入另一個Web頁面,它類似于HTML中的超鏈接,語法如下:Response.RedirectString16Clear方法Clear方法可以去除WebServer緩沖區(qū)中的內(nèi)容,但不能去除HTTP首部。其使用語法如下:Response.ClearEnd方法該方法的功能是通知效勞器立即停止處理ASP程序,在調(diào)用End方法之后出現(xiàn)的所有代碼都不會被執(zhí)行,包括純HTML代碼的顯示,語法如下:Response.EndFlush方法使用Flush方法,系統(tǒng)立即把緩存在效勞器端的Response輸出信息送客戶端顯示,語法如下:Response.Flush175.4.2Response對象的屬性

Buffer屬性Buffer屬性用來設置是否把Web頁面輸出到緩沖區(qū)語法如下:Response.Buffer=BooleanValue(布爾值)Expires屬性可以用Response對象的Expires屬性來控制這個頁面在緩存中的有效時間,語法如下:Response.Expires=IntnumExpiresAbsolute屬性與Expires屬性不同的ExpiresAbsolute屬性指定緩存于瀏覽器中的頁面確實切到期日期和時間,語法如下:Response.ExpiresAbsolute[=[日期][時間]]185.4.3Response對象的數(shù)據(jù)集合

Cookies是Response對象中惟一的數(shù)據(jù)集合使用Cookies可以設置客戶端瀏覽器內(nèi)的Cookie

Cookie的使用語法如下:Response.Cookies(var)[(key)|.attribute]=cookie值

下面這段代碼用來設置Cookie值,其中的關鍵字分別為name和password。

<%response.cookies("user")("name")="admini"response.cookies("user")("password")="12345"%>195.5Session對象Session是前端瀏覽器與效勞器每一次會話的標識變量,它附在每次會話的所有網(wǎng)頁數(shù)據(jù)中,在一段時間內(nèi)有效Session對象的使用語法如下:Session.屬性|方法|事件其屬性、方法、事件包括SessionID屬性返回用戶的會話驗證TimeOut屬性 應用程序會話狀態(tài)的超時時限,以min為單位Abandon方法 用于刪除所有存儲在Session對象中的變量Session_OnStart事件 該事件在效勞器創(chuàng)立新的會話時發(fā)生Session_OnEnd事件 該事件在會話被放棄或超時時發(fā)生205.5.1Session對象的屬性

SessionID屬性

語法如下:Session.SessionID

Timeout屬性

對于一個特定的會話,如果想設置一個與默認超時值不同的值,可以設置Timeout屬性,語法如下:Session.Timeout[=Minutes]215.5.2Session對象的方法

Session對象只有一個方法,就是Abandon方法該方法用于釋放Web效勞器用于保存某個用戶會話信息的存儲空間Abandon方法的使用語法如下:Session.Abandon5.5.3Session對象的事件Session_OnStart事件Session_OnEnd事件225.6Cookie的應用

5.6.1將Cookie寫入瀏覽器中將Cookie寫入瀏覽器中,可使用Response.Cookies5.6.2從瀏覽器獲取Cookie的值5.6.3設置Cookie路徑5.6.4Cookie與Session的比較用Response對象可以建立Cookie文件,以記錄來訪客戶的各種信息【例5-11】一個Cookie應用實例點擊查看程序235.7Application對象

我們可以使用Application對象,使同一個應用內(nèi)的多個用戶共享信息,并在效勞器運行期間持久地保存數(shù)據(jù),語法如下:Application.屬性|方法|事件Application對象沒有內(nèi)置屬性,但用戶可以設置自己的屬性。Application對象的方法和事件如下:Lock方法 用于鎖定Application對象,禁止其他用戶修改Application對象的值Unlock方法 解除鎖定,允許其他用戶修改Application對象的值Application_OnStart事件 第一個用戶訪問該站點時發(fā)生Application_OnEnd事件 關閉Web效勞器時發(fā)生245.7.1Application對象的屬性

雖然Application對象沒有內(nèi)置屬性,但用戶可以創(chuàng)立自己的屬性,又稱為Application變量。其語法如下:Application(“屬性|集合名稱”)=屬性值5.7.2Application對象的方法Lock方法用于鎖定對象,禁止其他用戶修改Application屬性,語法如下:Application.LockUnlock方法與Lock方法相反,它用于解除對Application對象的鎖定,語法如下:Application.Unlock255.7.3Application對象的事件

Application_OnStart事件

Application_OnStart事件僅在第1個用戶請求時發(fā)生,并且只被每個應用觸發(fā)一次Application_OnStart事件的語法如下:

<ScriptLanguage=VBScriptRUNAT=Server>SubApplication_OnStart…EndSub</Script>26Application_OnEnd事件Application_OnEnd事件在退出應用或Web效勞器被關閉時,于Session_OnEnd事件之后發(fā)生Application_OnEnd事件的語法如下:<ScriptLanguage=V

溫馨提示

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

最新文檔

評論

0/150

提交評論