[優(yōu)質(zhì)文檔]《ASP靜態(tài)網(wǎng)站制作實(shí)例教程》第5章:ASP基礎(chǔ)及應(yīng)用_第1頁
[優(yōu)質(zhì)文檔]《ASP靜態(tài)網(wǎng)站制作實(shí)例教程》第5章:ASP基礎(chǔ)及應(yīng)用_第2頁
[優(yōu)質(zhì)文檔]《ASP靜態(tài)網(wǎng)站制作實(shí)例教程》第5章:ASP基礎(chǔ)及應(yīng)用_第3頁
[優(yōu)質(zhì)文檔]《ASP靜態(tài)網(wǎng)站制作實(shí)例教程》第5章:ASP基礎(chǔ)及應(yīng)用_第4頁
[優(yōu)質(zhì)文檔]《ASP靜態(tài)網(wǎng)站制作實(shí)例教程》第5章:ASP基礎(chǔ)及應(yīng)用_第5頁
已閱讀5頁,還剩40頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、http:/ ASP基礎(chǔ)基礎(chǔ)n5.2 ASP的基本語法和規(guī)則的基本語法和規(guī)則n5.3 Global.asa文件文件n5.4 ASP與與HTML表單的結(jié)合使用表單的結(jié)合使用n5.5 實(shí)訓(xùn)實(shí)訓(xùn)http:/ ASP定義定義n5.1.2 ASP的特點(diǎn)的特點(diǎn)n5.1.3 ASP工作原理工作原理n5.1.4 ASP的內(nèi)建對(duì)象的內(nèi)建對(duì)象http:/ ASP文件的組成文件的組成n5.2.2 %=表達(dá)式表達(dá)式%與與Response.Write兩種輸出方式兩種輸出方式n5.2.3包含文件包含文件http:/ Global.asa的定義的定義n5.3.2 Global.asa文件的結(jié)構(gòu)文件的結(jié)構(gòu)http:/ 利用利

2、用Request.Form集合來獲取數(shù)據(jù)集合來獲取數(shù)據(jù)n5.4.2 利用利用Request.QueryString集合來獲集合來獲取數(shù)據(jù)取數(shù)據(jù)n5.4.3 在在ASP程序中實(shí)現(xiàn)數(shù)據(jù)交互程序中實(shí)現(xiàn)數(shù)據(jù)交互http:/ 建立一個(gè)交互式建立一個(gè)交互式ASP文件文件n實(shí)訓(xùn)實(shí)訓(xùn)5 包含文件的應(yīng)用包含文件的應(yīng)用n實(shí)訓(xùn)實(shí)訓(xùn)6 Global.asa文件的應(yīng)用文件的應(yīng)用http:/ Server Pages,是一套微軟開發(fā)的服務(wù),是一套微軟開發(fā)的服務(wù)器端腳本環(huán)境。器端腳本環(huán)境。ASP 內(nèi)含于內(nèi)含于 IIS 3.0 和和 4.0 之中之中 , 通過通過ASP可以結(jié)合可以結(jié)合HTML 網(wǎng)頁、網(wǎng)頁、ASP指令和指令和

3、ActiveX組件,建立組件,建立動(dòng)態(tài)、交互且高效的動(dòng)態(tài)、交互且高效的 WEB 服務(wù)器應(yīng)用程序。服務(wù)器應(yīng)用程序。nASP文件(即文件(即*.asp文件)與文件)與HTML文件類似,但文件類似,但ASP文件文件可以包含腳本命令,腳本命令放在可以包含腳本命令,腳本命令放在之間。當(dāng)用戶之間。當(dāng)用戶請(qǐng)求一個(gè)請(qǐng)求一個(gè)*.asp主頁時(shí),主頁時(shí),WWW響應(yīng)響應(yīng)HTTP請(qǐng)示調(diào)用請(qǐng)示調(diào)用ASP引引擎,解釋被申請(qǐng)的文件,當(dāng)遇到與擎,解釋被申請(qǐng)的文件,當(dāng)遇到與ActiveX Scripting兼容兼容的腳本(的腳本(VBScript或或JScript)時(shí))時(shí)ASP引擎調(diào)用相應(yīng)的腳本引擎調(diào)用相應(yīng)的腳本引擎進(jìn)行處理。引

4、擎進(jìn)行處理。ASP腳本在服務(wù)器端解釋執(zhí)行,結(jié)果自動(dòng)生腳本在服務(wù)器端解釋執(zhí)行,結(jié)果自動(dòng)生成符合成符合HTML語言的主頁去響應(yīng)用戶的請(qǐng)求。語言的主頁去響應(yīng)用戶的請(qǐng)求。ASP目前已成目前已成為目前應(yīng)用最廣泛的動(dòng)態(tài)網(wǎng)頁開發(fā)工具,同時(shí)應(yīng)用為目前應(yīng)用最廣泛的動(dòng)態(tài)網(wǎng)頁開發(fā)工具,同時(shí)應(yīng)用ASP進(jìn)行進(jìn)行網(wǎng)絡(luò)化的信息管理系統(tǒng)也逐步得到推廣。網(wǎng)絡(luò)化的信息管理系統(tǒng)也逐步得到推廣。http:/ 使用使用 VBScript 、JScript 等簡單的腳本語言,結(jié)合等簡單的腳本語言,結(jié)合 HTML 代碼,即可快速地完成網(wǎng)站的應(yīng)用程序。代碼,即可快速地完成網(wǎng)站的應(yīng)用程序。2. 使用普通的文本編輯器。使用普通的文本編輯器。3.

5、 與瀏覽器無關(guān)與瀏覽器無關(guān) (Browser Independence), 用戶端只要使用戶端只要使用可執(zhí)行用可執(zhí)行 HTML 碼的瀏覽器,即可瀏覽碼的瀏覽器,即可瀏覽 Active Server Pages 所設(shè)計(jì)的網(wǎng)頁內(nèi)容。所設(shè)計(jì)的網(wǎng)頁內(nèi)容。 4. Active Server Pages能與任何能與任何ActiveX Scripting語言相語言相容。容。5. Active Server Pages 的源程序,不會(huì)被傳到客戶瀏覽器。的源程序,不會(huì)被傳到客戶瀏覽器。6. 可使用服務(wù)器端的腳本產(chǎn)生客戶端的腳本。可使用服務(wù)器端的腳本產(chǎn)生客戶端的腳本。http:/ 普通普通HTML的執(zhí)行過程的執(zhí)行

6、過程n2. ASP的執(zhí)行過程的執(zhí)行過程n3. 程序運(yùn)行比較程序運(yùn)行比較http:/ 普通HTML的處理流程 圖 5.2 普通HTML的工作原理 特點(diǎn):內(nèi)容不再變化;頁面中只有HTML標(biāo)記,沒有程序代碼http:/ (1)用戶向?yàn)g覽器地址欄輸入網(wǎng)址,默認(rèn)頁面的擴(kuò)展名是.asp。 (2)瀏覽器向服務(wù)器發(fā)出請(qǐng)求。 (3)服務(wù)器引擎開始運(yùn)行ASP程序。(4)ASP文件按照從上到下的順序開始處理,執(zhí)行腳本命令,執(zhí)行HTML頁面內(nèi)容。 (5)頁面信息發(fā)送到瀏覽器。ASP文件具體工作原理如圖5.4所示。圖 5.3 ASP的執(zhí)行過程 圖 5.4 ASP的工作原理 http:/ 5.1html.htm的執(zhí)行結(jié)果

7、及在IE“查看”|“源文件”看到的結(jié)果,如圖5.5所示。 http:/ 5.1html.htm的運(yùn)行結(jié)果、在IE瀏覽器中觀察到“源文件”http:/ 這是一個(gè)帶ASP的動(dòng)態(tài)網(wǎng)頁這是一個(gè)帶ASP的動(dòng)態(tài)網(wǎng)頁,以下內(nèi)容是ASP生成的圖5.6 5.1asp.asp運(yùn)行結(jié)果、在IE瀏覽器中觀察到的“源文件”5.1asp.asp運(yùn)行結(jié)果、IE瀏覽器中觀察到的“源文件”http:/ 文件,將100的純HTML代碼發(fā)送到客戶端,所以我們?cè)诳蛻舳丝吹降拇a還是HTML,并不是ASP的源代碼。這樣做,就可以很少地考慮IE和Netscape 之間的區(qū)別了,從而避免了源代碼的外泄。http:/ Request對(duì)象,能

8、夠獲得任何用 HTTP請(qǐng)求傳遞的信息。 Response對(duì)象,能夠控制發(fā)送給用戶的信息。Server對(duì)象,提供對(duì)服務(wù)器上的方法和屬性進(jìn)行的訪問。Session 對(duì)象,能夠存儲(chǔ)特定的用戶會(huì)話所需的信息。ObjectContext 對(duì)象,可以提交或撤消由 ASP 腳本初始化的事務(wù)。 http:/ ASP組成一個(gè)簡單的ASP文件包括以下三個(gè)部分:普通的HTML標(biāo)記;ASP代碼;Script語言代碼。2.說明HTML標(biāo)記,用“”符號(hào)將HTML代碼包括起來。HTML代碼是在用戶使用的瀏覽器中執(zhí)行的。ASP代碼 在HTML標(biāo)記中,用“”符號(hào)將ASP代碼包括起來。ASP代碼是在Web服務(wù)器端被解釋成HTML

9、語句,并返回到瀏覽器中執(zhí)行的。Script代碼 以“”開頭,以“”結(jié)尾。其中的腳本語言名可以是VBScript或JavaScript。屬于HTML標(biāo)記。http:/ 現(xiàn)在的時(shí)間是:Response.write nowResponse.write 變量I的值是:& I%http:/ 例5.3的運(yùn)行結(jié)果http:/ Response.Write語句格式:Response.Write 字符串功能:負(fù)責(zé)把字符串信息輸出到瀏覽器。說明:字符串,要用 引起來內(nèi)容。的輸出,要重復(fù)使用“”字符來顯示。如:Response.Write Good morning!,可以實(shí)現(xiàn)輸出“Good morning”

10、的字符串 2. 這是Response.Write的一種簡單的表達(dá)方式,這種簡便的方法通常配合HTML使用。如:,可以實(shí)現(xiàn)輸出“ASP基礎(chǔ)”的字符串。,可以實(shí)現(xiàn)時(shí)間的輸出。建議大家不要濫用此語句,否則會(huì)造成閱讀難于理解。http:/ 程序舉例【例5.3】Response.Write輸出舉例5.3.asp現(xiàn)在時(shí)間隨機(jī)數(shù)運(yùn)行結(jié)果如圖5.8所示。 圖5.8 例5.3的運(yùn)行結(jié)果http:/ 語法格式 2. 參數(shù)說明filename是預(yù)想包含的文件的路徑和名稱。被包含文件不要求專門的文件擴(kuò)展名; Virtual 與File 表示Virtual和FILE任選其一Virtual 要包含的文件是在Web站點(diǎn)的虛

11、擬目錄的完整虛擬路徑(該目錄為Web 共享目錄);例如:如果一個(gè)被命名為 Footer.inc 的文件屬于一個(gè)名為 /Myapp 的虛擬目錄,則下面的一行將把 Footer.inc 的內(nèi)容插入到包含該行的文件中,F(xiàn)ile 要包含的文件使用相對(duì)路徑。例如:假設(shè)你有兩個(gè)Web共享目錄Dir1和Dir2的結(jié)構(gòu),如下圖5.9所示,http:/ 虛擬目錄Dir1和Dir2的文件結(jié)構(gòu)目錄Dir1內(nèi)有文件file1.asp和file2.asp,目錄Dir2下有文件s2file.asp,(1).若要在文件file1.asp中包含s2file.asp,則將如下命令加入到文件file1.asp中:其中File1.

12、asp文件如下:%=%=% http:/ 采用Include Virtual實(shí)現(xiàn)的包含文件http:/ 或者使用如下命令亦可: 例如:修改后的File1.asp文件如下:%=%=%程序運(yùn)行結(jié)果圖5.11所示:圖5.11 采用Include File實(shí)現(xiàn)的包含文件http:/ 程序舉例【例5.4】下面我們給出一個(gè)綜合實(shí)例,顯示一下inc包含文件的具體應(yīng)用。首先建立一個(gè)CSS的樣式列表,設(shè)置了MenuType及tableType的樣式單分別來設(shè)置表格的屬性和文本屬性。其次,建立了一個(gè)簡單的菜單欄實(shí)現(xiàn)網(wǎng)頁之間的導(dǎo)航。http:/ Server Application的首字母縮寫。Global.asa

13、文件可以管理在ASP應(yīng)用中兩個(gè)非??量痰膶?duì)象:Application、Session。 global.asa是一個(gè)可選文件,程序編寫者可以在該文件中指定事件腳本,并聲明具有會(huì)話和應(yīng)用程序作用域的對(duì)象。該文件的內(nèi)容不是用來給用戶顯示的,而是用來存儲(chǔ)事件信息和由應(yīng)用程序全局使用的對(duì)象。該文件必須存放在應(yīng)用程序的根目錄內(nèi)。每個(gè)應(yīng)用程序只能有一個(gè)Global.asa文件。 Global.asa文件主要基于會(huì)話級(jí)事件被訪問,在以下三種情況下被調(diào)用: 1. 當(dāng)Application_OnStart或Application_OnEnd事件被觸發(fā)。 2. 當(dāng)Session_OnStart或Session_On

14、End事件被觸發(fā)。 3. 當(dāng)引用一個(gè)在Global.asa文件里被實(shí)例化的對(duì)象(Object)。當(dāng)一個(gè)ASP應(yīng)用啟動(dòng)的時(shí)候,IIS就會(huì)尋找一個(gè)Global.asa文件。如果該文件存在,就開始執(zhí)行Application_OnStart。在這里可以初始化應(yīng)用級(jí)的變量和常量。http:/ 文件的基本結(jié)構(gòu) Sub Application_OnStart Application_OnStart 當(dāng)任何客戶首次訪問該應(yīng)用程序的首頁時(shí)運(yùn)行 End Sub Sub Session_OnStart Session_OnStart 當(dāng)客戶首次運(yùn)行 ASP 應(yīng)用程序中的任何一個(gè)頁面時(shí)運(yùn)行 End Sub Sub S

15、ession_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 http:/ 說明Application_OnStartApplication_OnStart事件在第一位使用者打開所有具有Application對(duì)象網(wǎng)頁的其中一個(gè)時(shí)觸發(fā), 并且這個(gè)事件將會(huì)在Session的OnStart事件之前被觸發(fā)。我們常用Application的OnStart事件中定義所有用戶都使用的公共變量,如網(wǎng)站用戶個(gè)數(shù)、歡迎詞等等。在Ap

16、plication_OnStart 事件腳本中引用 Session、Request 或 Response 對(duì)象將導(dǎo)致錯(cuò)誤。Application_OnEndApplication_OnEnd事件在應(yīng)用程序退出時(shí)于Session_OnEnd事件之后發(fā)生,只有 Application和Server內(nèi)建對(duì)象可用。Session_ OnStartSession_OnStart 事件在服務(wù)器創(chuàng)建新會(huì)話時(shí)發(fā)生。服務(wù)器在執(zhí)行請(qǐng)求的頁之前先處理該腳本。Session_OnStart 事件是設(shè)置會(huì)話期變量的最佳時(shí)機(jī),因?yàn)樵谠L問任何頁之前都會(huì)先設(shè)置它們。所有內(nèi)建對(duì)象都可以在 Session_OnStart 事件腳

17、本中使用和引用。Session_ OnEndSession_OnEnd 事件在會(huì)話被放棄或超時(shí)發(fā)生。在服務(wù)器內(nèi)建對(duì)象中,只有 Application、Server 和 Session 對(duì)象可用。http:/ 應(yīng)用舉例下面我們通過一個(gè)例子來看一個(gè)Global.asa的簡單應(yīng)用。【例5.5】網(wǎng)站動(dòng)態(tài)在線人數(shù)統(tǒng)計(jì)5.5.aspGlobal.asa文件Sub Application_onStartApplication(OnLine) = 0 End Sub Sub Session_onStart 一個(gè)用戶訪問進(jìn)行記數(shù)加1 Application.Lock Application(OnLine) =

18、Application(OnLine) + 1 Application.Unlock End Sub Sub Session_OnEnd 一個(gè)用戶進(jìn)程的結(jié)束,記數(shù)減1 Application.Lock Application(OnLine) = Application(OnLine) - 1 Application.Unlock End Sub 5.5.asphttp:/ 例5.5的運(yùn)行結(jié)果注意:Global.asa 必須存放在應(yīng)用程序的根目錄中。每個(gè)應(yīng)用程序只能有一個(gè)Global.asa 文件。http:/ 語法格式變量名=Request.Form(參數(shù)名稱|索引值)2. 參數(shù)說明參數(shù)名稱

19、是客戶表單通過Post方法遞交過來的表單域的名稱。索引值 是表單域在表單中的順序號(hào),一般從1開始。利用Request.Form,只能實(shí)現(xiàn)Post方法的數(shù)據(jù)傳遞。3. 程序舉例【例5.6】假如客戶端Web頁面包含的如下表單域:FirstName、LastName。網(wǎng)頁如下圖5.13所示:圖5.13 例5.6的Web頁面 http:/ = Request.Form(FirstName)strLastName = Request.Form(LastName)獲取參數(shù)除了采用參數(shù)名稱,還可以使用索引值,例如,上例,也可以通過下面語句實(shí)現(xiàn):例:strFirstName=Request.Form(1)st

20、rLastName=Request.Form(2)http:/ 語法格式Request.QueryString(參數(shù)名稱|索引值)2. 參數(shù)說明參數(shù)名稱 由Get方法從客戶端發(fā)送過來的變量。索引值 是表單域在表單中的順序號(hào),一般從1開始。利用Request. QueryString,能實(shí)現(xiàn)網(wǎng)頁表單中Get方法的數(shù)據(jù)傳遞或是。檢索HTTP查詢字符串中變量的值,HTTP 查詢字符串由問號(hào) (?) 后的值指定。如:string sample 變量名string的值為: this is a sample我們可以采用下面的語句獲得:strString=Request.QueryString(String

21、)同樣道理,我們也可以使用索引值,獲得上述數(shù)據(jù)。如:strString= Request.QueryString(1)http:/ 使用使用Request.QueryString實(shí)現(xiàn)交互實(shí)現(xiàn)交互使用使用Request.Form實(shí)現(xiàn)交互實(shí)現(xiàn)交互通過上面章節(jié)的講解,我們基本上掌握了網(wǎng)頁數(shù)據(jù)交互的基本原理。本節(jié),我們將繼續(xù)通過實(shí)例讓大家體會(huì),以上兩種方法實(shí)現(xiàn)交互的特點(diǎn)。所舉例子采用兩個(gè)文件實(shí)現(xiàn)。userinput.htm文件負(fù)責(zé)提交數(shù)據(jù),userexec.asp文件負(fù)責(zé)數(shù)據(jù)的獲得、顯示。http:/ 例5.7的Web頁面點(diǎn)擊“提交”按鈕后,就會(huì)執(zhí)行Web服務(wù)器的userexec.asp腳本文件,userexec.asp文件的源程序代碼如下,由于表單(form)使用get方式,源程序代碼使用輸入數(shù)據(jù)=request.querystring(字段名),將附加于URL后的數(shù)據(jù)取出,以取得此段的輸入數(shù)據(jù):http:/ 例5.7采用Get方法實(shí)現(xiàn)用戶交互的結(jié)果你好,你的愛好是程序運(yùn)行結(jié)果如圖5.15所示:http:/ Form實(shí)現(xiàn)交互,以

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論