- 相關(guān)推薦
ASP技術(shù)基礎(chǔ)入門教程
Microsoft Active Server Pages 即我們所稱的ASP ,其實(shí)是一套微軟開發(fā)的服務(wù)器端腳本環(huán)境, ASP 內(nèi)含于 IIS 3.0 和 4.0 之中 , 通過 ASP 我們可以結(jié)合 HTML 網(wǎng)頁、 ASP 指令和 ActiveX 元件建立動態(tài)、交互且高效的 WEB 服務(wù)器應(yīng)用程序。有了 ASP 你就不必?fù)?dān)心客戶的瀏覽器是否能運(yùn)行你所編寫的代碼,因?yàn)樗械某绦蚨紝⒃诜⻊?wù)器端執(zhí)行,包括所有嵌在普通 HTML 中的腳本程序。當(dāng)程序執(zhí)行完畢后,服務(wù)器僅將執(zhí)行的結(jié)果返回給客戶瀏覽器,這樣也就減輕了客戶端瀏覽器的負(fù)擔(dān),大大提高了交互的速度。
以下羅列了 Active Server Pages 所獨(dú)具的一些特點(diǎn):
1. 使用 VBScript 、 JScript 等簡單易懂的腳本語言,結(jié)合 HTML 代碼,即可快速地完成網(wǎng)站的應(yīng)用程序。
2. 無須 compile 編譯,容易編寫,可在服務(wù)器端直接執(zhí)行。
3. 使用普通的文本編輯器,如 Windows 的記事本,即可進(jìn)行編輯設(shè)計。
4. 與瀏覽器無關(guān) (Browser Independence), 用戶端只要使用可執(zhí)行 HTML 碼的瀏覽器,即可瀏覽 Active Server Pages 所設(shè)計的網(wǎng)頁內(nèi)容。 Active Server Pages 所使用的腳本語言 (VBScript 、 Jscript) 均在 WEB 服務(wù)器端執(zhí)行,用戶端的瀏覽器不需要能夠執(zhí)行這些腳本語言。
5.Active Server Pages 能與任何 ActiveX scripting 語言相容。除了可使用 VBScript 或 JScript 語言來設(shè)計外,還通過 plug-in 的方式,使用由第三方所提供的其他腳本語言,譬如 REXX 、 Perl 、 Tcl 等。腳本引擎是處理腳本程序的 COM(Component Object Model) 物件。
6.Active Server Pages 的源程序,不會被傳到客戶瀏覽器,因而可以避免所寫的源程序被他人剽竊,也提高了程序的安全性。
7. 可使用服務(wù)器端的腳本來產(chǎn)生客戶端的腳本。
8. 物件導(dǎo)向( Object-oriented )。
9.ActiveX Server Components(ActiveX 服務(wù)器元件 ) 具有無限可擴(kuò)充性?梢允褂 Visual Basic 、 Java 、 Visual C++ 、 COBOL 等編程語言來編寫你所需要的 ActiveX Server Component 。
ASP 的奇妙之處真是不勝枚舉,下面就請各位系好安全帶,我將帶領(lǐng)大家進(jìn)入 ASP 的夢幻世界。 首先,讓我們來看看運(yùn)行ASP 所需的環(huán)境:
·Microsoft Internet Information Server version 3.0/4.0 on Windows NT Server ·Microsoft Peer Web Services Version 3.0 on Windows NT Workstation
·Microsoft Personal Web Server on Windows 95/98
與一般的程序不同,.asp 程序無須編譯,ASP 程序的控制部份,是使用VBScript 、JScript 等腳本語言來設(shè)計的,當(dāng)執(zhí)行 ASP 程序時,腳本程序?qū)⒁徽酌畎l(fā)送給腳本解釋器 ( 即腳本引擎 ) ,由腳本解釋器進(jìn)行翻譯并將其轉(zhuǎn)換成服務(wù)器所能執(zhí)行的命令。當(dāng)然,同其他編程語言一樣, ASP 程序的編寫也遵循一定的規(guī)則,如果你想使用你所喜愛的腳本語言編寫 ASP 程序,那么你的服務(wù)器上必須要有能解釋這種腳本語言的腳本解釋器。
當(dāng)你安裝 ASP 時,系統(tǒng)提供了兩種腳本語言: VBsrcipt 和 JScript ,而 VBscript 則被作為系統(tǒng)默認(rèn)的腳本語言。你也可以根據(jù)自己的喜好改變系統(tǒng)默認(rèn)的腳本語言,關(guān)于如何改變系統(tǒng)默認(rèn)的腳本語言請看《 在 ASP 中使用腳本語言》一文。ASP 本身并不是一種腳本語言,它只是提供了一種使鑲嵌在 HTML 頁面中的腳本程序得以運(yùn)行的環(huán)境。但是,要學(xué)好 ASP 又必須掌握它的語法和規(guī)則,F(xiàn)在就讓我們開始一步一步地認(rèn)識并學(xué)習(xí) Active Server Pages 。
ASP 程序其實(shí)是以擴(kuò)展名為 .asp 的純文本形式存在于 WEB 服務(wù)器上的,你可以用任何文本編輯器打開它, ASP 程序中可以包含純文本、 HTML 標(biāo)記以及腳本命令。你只需將 .asp 程序放在 WEB 服務(wù)器的虛擬目錄下(該目錄必須要有可執(zhí)行權(quán)限),就可以通過 WWW 的方式訪問ASP 程序了。
要學(xué)好 ASP 程序的設(shè)計,必須掌握腳本的編寫,那么究竟什么是腳本呢?其實(shí)腳本是由一系列的腳本命令所組成的,如同一般的程序,腳本可以將一個值賦給一個變量,可以命令WEB 服務(wù)器發(fā)送一個值到客戶瀏覽器,還可以將一系列命令定義成一個過程。要編寫腳本,你必須要熟悉至少一門腳本語言,如VBScript 。
腳本語言是一種介乎于 HTML 和諸如 JAVA 、Visual Basic 、C++ 等編程語言之間的一種特殊的語言,盡管它更接近后者,但它卻不具有編程語言復(fù)雜、嚴(yán)謹(jǐn)?shù)恼Z法和規(guī)則。如前所述 ASP 所提供的腳本運(yùn)行環(huán)境可支持多種腳本語言,譬如: JScript 、 REXX 、 PERL 等等,這無疑給ASP 程序設(shè)計者提供了廣泛的發(fā)揮余地。
ASP 的出現(xiàn)使得廣大 WEB 設(shè)計者不必在為客戶瀏覽器是否支持而擔(dān)心,實(shí)際上就算你 在同一個 .asp 文件中使用不同的腳本語言,你都無須為此擔(dān)憂,因?yàn)樗械囊磺卸紝⒃诜⻊?wù)器端進(jìn)行,客戶瀏覽器得到的只是一個程序執(zhí)行的結(jié)果,而你也只需在 .asp 中聲明使用不同的腳本語言即可。
下面是一個典型的在同一 .asp 文件中使用兩種腳本語言的例子:
< HTML> < BODY> < TABLE>< % Call Callme %>< /TABLE>< % Call ViewDate %>< /BODY> < /HTML>< SCRIPT LANGUAGE=VBScript RUNAT=Server>Sub Callme Response.Write "< TR>< TD>Call< /TD>< TD>Me< /TD>< /TR>" End Sub < /SCRIPT>< SCRIPT LANGUAGE=JScript RUNAT=Server> function ViewDate(){ var x x = new Date() Response.Write(x.toString()) }< /SCRIPT>
這是各位在本文中接觸的第一個真正的 ASP 程序,千萬不要被“ < % %> ”符號搞糊涂,這其實(shí)是標(biāo)準(zhǔn)的ASP 定界符,而“ < SCRIPT>< /SCRIPT> ”之間的就是腳本語言。
ASP 不同于腳本語言,它有自己特定的語法,所有的 ASP 命令都必須包含在 < % 和 %> 之內(nèi),如:
< % test="English" %> , ASP 通過包含在 < % 和 %> 中的表達(dá)式將執(zhí)行結(jié)果輸出到客戶瀏覽器 , 如: < % =test %> 就是將前面賦給變量 test 的值 English 發(fā)送到客戶瀏覽器中,而當(dāng)變量 test 的值為 Mathematics 時 , 以下程序: This weekend we will test < % =test %>. 在客戶瀏覽器中則顯示為: This weekend we will test Mathematics.
學(xué)習(xí)ASP 最好的方法莫過于親自動手編寫,為了在最短的時間內(nèi)使各位掌握 ASP 的程序設(shè)計技巧,本文將采取實(shí)例分析法,通過一系列的實(shí)例讓各位在實(shí)踐中學(xué)習(xí) ASP 。
建立一個 ASP 頁面,你所需的只是打開一個文本編輯器,如: Notepad ,然后跟我開始動手編寫第一個 ASP 程序。下面我們將建立一個自動監(jiān)測瀏覽時間并根據(jù)不同時段動態(tài)顯示不同頁面內(nèi)容的 ASP 程序,請將以下代碼剪貼到你的文本編輯器中 , 并存為 test1.asp :
< html> < body> < FONT COLOR="Green">< % If Time < #12:00:00# And Time> = #00:00:00# Then %> 早上好,今天天氣不賴啊 ! < % ElseIf Time < #19:00:00# And Time >= #12:00:00# Then %>下午好 !< % Else %>哈嘍 ! 今晚你有沒有去 IRC 聊天 ! < % End If %>< /body>< /html>
將 test1.asp 保存在 WEB 服務(wù)器的虛擬目錄 ( 如: aspsamp/) 下,并在瀏覽器中用 HTTP 的方式進(jìn)行瀏覽,如: http://yourcomputername/aspsamp/test1.asp ,你將會新奇地發(fā)現(xiàn),你的頁面真的活起來了。雖然,這只是一個非常簡單的實(shí)例,而且這一功能完全可以通過 JavaScript 完成,但是不難發(fā)現(xiàn)使用ASP 要比JavaScript 簡潔、迅速得多,而且運(yùn)用此法,你完全可以輕而易舉地令你的網(wǎng)頁在不同的時段展示不同的風(fēng)格。
此例中的Time 實(shí)際上是一個 VBScript 內(nèi)置的顯示系統(tǒng)當(dāng)前時間的函數(shù),由于系統(tǒng)默認(rèn)的腳本語言是 VBScript ,因此當(dāng)你在 ASP 命令中調(diào)用該函數(shù)時,腳本引擎會自動將其轉(zhuǎn)換成當(dāng)前的系統(tǒng)時間。
接下來我們將給 test1.asp 添加一點(diǎn)色彩,在 < body> 標(biāo)識中添加“ bgcolor="< % =bgc %> ”即變?yōu)?< body bgcolor="< % =bgc %>"> ,并在 < body> 標(biāo)記前添加如下語句: < % If Time < #12:00:00# And Time >= #00:00:00# Then bgc="silver" ElseIf Time < #19:00:00# And Time >= #12:00:00# Then bgc="navy" Else bgc="red" End If %> 如此一來,當(dāng)用戶在不同的時段訪問你的頁面時,他們將會看到不同的頁面背景色。
我們可以做的事情還有很多,譬如你想知道在凌晨至十二點(diǎn)之間瀏覽你頁面的客戶的姓名,并向他或她問好,那么下面的這段程序?qū)⒛苤氵_(dá)成心愿。首先你需要在頁面中設(shè)置表單,將以下 HTML 代碼剪貼到“ < % If Time < #12:00:00# And Time >= #00:00:00# Then %> ”之后:
歡迎光臨我的主頁,請?zhí)顚懸韵滦畔?:
< FORM METHOD="POST" ACTION="test1.asp"> < P> First Name: < INPUT NAME="fname" SIZE="48">< P> Last Name: < INPUT NAME="lname" SIZE="48">< P> Title: < INPUT NAME="title" TYPE=RADIO VALUE="mr"> Mr. < INPUT NAME="title" TYPE=RADIO VALUE="ms">Ms. < P>< INPUT TYPE=SUBMIT>< INPUT TYPE=RESET> < /FORM>
然后在以上 HTML 代碼后面添加如下 ASP 命令:
< % title=request.form("title") if title="mr" then %> 歡迎您 Mr.< % =request.form("fname") %> 。 < % elseif title="ms" then %> 歡迎您 Ms.< % =request.form("fname") %> 。< % else %> < B>< font color=blue> 歡迎您 < % =request.form("fname")&" "&request.form("lname") %> 。 < /font>< /B> < % end if %>
保存文件 test1.asp ,并在瀏覽器中以 HTTP 方式進(jìn)行瀏覽,如果此時的系統(tǒng)時間在凌晨 0:00:00 和中午 12:00:00 之間的話,瀏覽器將顯示如下畫面:
這其實(shí)是一個在 Internet 和 Intranet 上常見的功能,即當(dāng)用戶在瀏覽器端填寫完表單后,通過調(diào)用一個通用網(wǎng)關(guān)程序?qū)⒂脩魯?shù)據(jù)傳送到服務(wù)器,由服務(wù)器進(jìn)行處理后再將結(jié)果返還給客戶瀏覽器。過去為了實(shí)現(xiàn)這樣的功能必須編寫一個獨(dú)立于 HTML 之外的 CGI 程序,并通過 HTML 進(jìn)行調(diào)用,撇開 CGI 編寫復(fù)雜等缺點(diǎn)不談, CGI 的執(zhí)行效率也是一個大問題,每一個表單 (form) 均須執(zhí)行一個可執(zhí)行文檔,當(dāng)多人同時上線使用時,多個文檔同時執(zhí)行,將大大降低 WEB 服務(wù)器的執(zhí)行速度,如今 ASP 提供了與 HTML 完全相融的編程環(huán)境,顯然要比使用CGI 便捷得多。
在本期的最后讓我們再來看看 ASP 的循環(huán)功能,譬如你希望當(dāng)客戶在晚間 7:00 至凌晨 0:00:00 瀏覽你的頁面時,在頁面中央顯示 6 個笑臉示問候,那么你只需要將以下命令剪貼到“ Good Evening! ”后面即可:
< % for i=1 to 6 %>< p>< center>< img src="smile.gif" width="32" height="32" alt=" 晚上好 ">< /p>< % next %>
這是一個最最基本的循環(huán)語句,它將一個笑臉圖片重復(fù)調(diào)用六次并顯示在頁面上。當(dāng)然此例的效果完全可以用 HTML 做到,但是不難發(fā)現(xiàn)使用 ASP 大大縮短了代碼的重復(fù)編寫,使得程序具有良好的可閱讀性。
另外,當(dāng)你制作一個諸如根據(jù)用戶投票來給所評測的對象評定星級的評測站點(diǎn)時,使用此法,你就完全不需要為每一個星級制作一幅圖片。如果一個對象被評為 4 星級,那只需將一顆星的圖片循環(huán)顯示 4 次,以此類推即可。
【ASP技術(shù)基礎(chǔ)入門教程】相關(guān)文章:
象棋基礎(chǔ)入門教程(二) 基本技術(shù)08-29
象棋基礎(chǔ)入門教程(三) 象棋術(shù)語09-20
幾點(diǎn)鋼琴的技術(shù)基礎(chǔ)09-22
梵語入門教程08-20
CSS入門教程01-25
新手油畫入門教程09-16