ASP程序設(shè)計(jì)及應(yīng)用課件_第1頁
ASP程序設(shè)計(jì)及應(yīng)用課件_第2頁
ASP程序設(shè)計(jì)及應(yīng)用課件_第3頁
ASP程序設(shè)計(jì)及應(yīng)用課件_第4頁
ASP程序設(shè)計(jì)及應(yīng)用課件_第5頁
已閱讀5頁,還剩241頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

ASP基礎(chǔ)

1.1靜態(tài)網(wǎng)頁與動態(tài)網(wǎng)頁Web採用一種被稱為“瘦客戶機(jī)”的技術(shù),使用B/S(Browser/Server,流覽器/伺服器)模型。1.1靜態(tài)網(wǎng)頁與動態(tài)網(wǎng)頁根據(jù)Web伺服器向Web流覽器發(fā)送頁面的內(nèi)容可將網(wǎng)頁分為兩種:靜態(tài)網(wǎng)頁和動態(tài)網(wǎng)頁。靜態(tài)網(wǎng)頁是指對於所有訪問該網(wǎng)頁的用戶來說,在其客戶端流覽器的顯示內(nèi)容都是一樣的。又稱為“普通HTML網(wǎng)頁”,其檔的擴(kuò)展名為.htm或.html。動態(tài)網(wǎng)頁會根據(jù)用戶的不同需求顯示不同的內(nèi)容。1.1靜態(tài)網(wǎng)頁與動態(tài)網(wǎng)頁1.1.1靜態(tài)網(wǎng)頁及其執(zhí)行過程用戶首先在流覽器的地址欄中鍵入要訪問的網(wǎng)頁地址,並回車觸發(fā)這個申請。流覽器將申請發(fā)送到指定的WebServer上。WebServer接收這些申請並根據(jù).htm或.html的尾碼名判斷請求的是HTML文件。WebServer從當(dāng)前硬碟或記憶體中讀取正確的HTML檔,然後將它送回用戶流覽器。用戶的流覽器解釋這些HTML檔並將結(jié)果顯示出來。1.1靜態(tài)網(wǎng)頁與動態(tài)網(wǎng)頁1.1.2動態(tài)網(wǎng)頁及其執(zhí)行過程用戶在流覽器的地址欄中鍵入動態(tài)網(wǎng)頁檔,並回車觸發(fā)這個動態(tài)網(wǎng)頁的請求。流覽器將這個動態(tài)網(wǎng)頁的請求發(fā)送到Web伺服器。Web伺服器接收這些請求並根據(jù)擴(kuò)展名(例如.asp)判斷請求的是動態(tài)網(wǎng)頁,Web伺服器從硬碟或記憶體中讀取正確的動態(tài)網(wǎng)頁檔。Web伺服器將這個動態(tài)網(wǎng)頁檔從頭至尾執(zhí)行,並根據(jù)執(zhí)行結(jié)果生成相應(yīng)的HTML檔(靜態(tài)網(wǎng)頁)。HTML檔被送回流覽器。用戶的流覽器解釋這些HTML檔並將結(jié)果顯示出來。1.1靜態(tài)網(wǎng)頁與動態(tài)網(wǎng)頁1.CGI:CGI是一種通用的網(wǎng)關(guān)介面,是外部程式和WEB伺服器之間的標(biāo)準(zhǔn)編程介面。

2.ASP:可以認(rèn)為ASP是一種類似HTML、Script與CGI的結(jié)合體,但是其運(yùn)行效率卻要比CGI高。3.

PHP:PHP(HypertextPreprocessor,超文本預(yù)處理器)是一種HTML內(nèi)嵌式的語言(類似於ASP)。4.JSP:JSP(JavaServerPages,Java伺服器頁面)是Sun公司推出的網(wǎng)站開發(fā)技術(shù),是將純Java代碼嵌入HTML中實(shí)現(xiàn)動態(tài)功能的一項(xiàng)技術(shù)。5.A:ASP.NET不是ASP的一個簡單升級,它提供了一個全新且功能強(qiáng)大的伺服器控件結(jié)構(gòu)。

本章首頁1.2ASP基礎(chǔ)

ASP(ActiveServerPages,活動伺服器網(wǎng)頁)是伺服器端腳本編寫環(huán)境,可以創(chuàng)建和運(yùn)行動態(tài)、交互、高效的Web伺服器應(yīng)用程式。使用ASP可以組合HTML標(biāo)記、腳本命令和ActiveX組件以創(chuàng)建交互的Web頁和基於Web的功能強(qiáng)大的應(yīng)用程式。

1.2ASP基礎(chǔ)1.2.1ASP的特性ASP是在伺服器端運(yùn)行,ASP程式具有保密性。在ASP中可以包含HTML標(biāo)記、伺服器端和客戶端腳本命令和ActiveX組件。ASP提供了幾種內(nèi)置對象。使用附加組件可以擴(kuò)展ActiveServerPages。ASP可以與資料庫(如SQLServer,MicrosoftAccess等)建立連接。

1.2ASP基礎(chǔ)1.2.2ASP程式的基本結(jié)構(gòu)ASP檔是以.asp為擴(kuò)展名的文本檔。在ASP檔中通常包含文本、HTML標(biāo)記和腳本命令,這三部分的內(nèi)容以各種組合混雜在ASP檔中,需要使用不同的符號進(jìn)行區(qū)分。HTML使用標(biāo)準(zhǔn)的HTML標(biāo)記界定;ASP語句和ASP腳本命令必須使用“<%”和“%>”表示腳本的開始和結(jié)束,可以每一行ASP語句界定一次,也可以多行語句界定一次。

1.3ASP的運(yùn)行

1.3.1IIS5.0的安裝和設(shè)置1.安裝IIS5.02.創(chuàng)建Web站點(diǎn)3.啟動、停止Web站點(diǎn)4.設(shè)置Web站點(diǎn)5.創(chuàng)建和設(shè)置虛擬目錄1.3.2PWS的安裝和設(shè)置1.安裝PWS2.設(shè)置PWS2.1HTML語言概述

WWW(WorldWideWeb,萬維網(wǎng))拉進(jìn)了人們彼此間的距離,使得人與人之間的資訊交流變得更加簡便和快捷。WWW上的資訊,大部分是通過HTML語言發(fā)佈的。本章首頁2.1HTML語言概述

2.1.1HTML概述

HTML是(HyperTextMarkupLanguage,超文本標(biāo)記語言)的縮寫,最早源於SGML語言。HTML用來表示網(wǎng)上資訊的符號標(biāo)記語言。在WWW上,發(fā)佈資訊通常使用HTML,它是Web頁面的基礎(chǔ),任何一個Web頁面都離不開HTML,而且HTML也是Web應(yīng)用開發(fā)的基礎(chǔ)。

HTML語言是大多數(shù)流覽器都能識別的語言,使用HTML語法規(guī)則建立的文本可以運(yùn)行在不同的操作系統(tǒng)平臺上,而且能被大多數(shù)用戶所接受。

2.1HTML語言概述

2.1.2文檔的結(jié)構(gòu)

<HTML><HEAD>

頭部資訊

</HEAD><BODY>

正文部分

</BODY></HTML>檔開頭和結(jié)尾由<HTML>和</HTML>來標(biāo)記。<HEAD>和</HEAD>標(biāo)記頭部,用來包含檔的基本資訊;<BODY>和</BODY>標(biāo)記正文部分,是整個檔的主體部分。

2.1HTML語言概述

<HTML><HEAD><TITLE>這是標(biāo)題部分。</TITLE></HEAD><BODY><P>你好,這是正文部分!</P></BODY></HTML>2.1HTML語言概述

2.1.3HTML標(biāo)記

1.HTML文檔標(biāo)記格式:<HTML>…</HTML>功能:標(biāo)誌文檔開始和結(jié)尾的標(biāo)記。

2.HTML檔頭標(biāo)記格式:<HEAD>…</HEAD>功能:用於包含檔的基本資訊。

3.HTML檔主體標(biāo)記格式:<BODY>…</BODY>功能:檔主體標(biāo)記。

2.1HTML語言概述

2.1.4常用HTML編輯工具任何一個文檔編輯器都是HTML編輯器。為了減少網(wǎng)頁設(shè)計(jì)師的工作,使設(shè)計(jì)網(wǎng)頁更加的方便,很多公司設(shè)計(jì)了專用的網(wǎng)頁編輯器,像Dreamweaver,F(xiàn)rontPage,CutePage,QuickSite等,是專門用來製作網(wǎng)頁的,利用它們可以很容易的編寫出精美的網(wǎng)頁,具有所見即所得的功能。所謂所見即所得,就是在編輯網(wǎng)頁時看到的效果,與使用流覽器時顯示的效果基本一致。

2.2文檔的格式與風(fēng)格在大多數(shù)網(wǎng)頁中,文檔是核心的內(nèi)容,只有設(shè)置適當(dāng)?shù)奈臋n格式,才能得到絢麗多彩的網(wǎng)頁。設(shè)置文檔的格式包括:設(shè)置標(biāo)題和文字的字體、字型大小、字型、顏色,段落格式、文本佈局等。2.2文檔的格式與風(fēng)格2.2.1設(shè)置<BODY>的屬性標(biāo)記屬性功能background=URL設(shè)置網(wǎng)頁的背景圖片bgcolor=colorvalue設(shè)置網(wǎng)頁的背景顏色text=colorvalue設(shè)置文本的顏色link=colorvalue設(shè)置尚未被訪問過的超文本鏈接的顏色,默認(rèn)為藍(lán)色vlink=colorvalue設(shè)置已被訪問過的超文本鏈接的顏色,默認(rèn)為紫色alink=colorvalue設(shè)置超文本鏈接在被單擊的瞬間的顏色,默認(rèn)為紅色bgproperties=fixed設(shè)置背景是否隨滾動條滾動leftmargin=size設(shè)置網(wǎng)頁左邊的空白topmargin=size設(shè)置網(wǎng)頁上方的空白margingwidth=size設(shè)置網(wǎng)頁空白的寬度marginheight=size設(shè)置網(wǎng)頁空白的高度2.2文檔的格式與風(fēng)格2.2.2段落格式化1.標(biāo)題標(biāo)記格式:<H1>…</H1>,<H2>…</H2>…<H6>…</H6>功能:設(shè)置各種大小不同標(biāo)題的標(biāo)記。2.段落標(biāo)記格式:<P>…</P>功能:設(shè)置段落標(biāo)記。3.預(yù)定義格式標(biāo)記格式:<PRE>…</PRE>

2.2文檔的格式與風(fēng)格4.分區(qū)顯示標(biāo)記格式:<DIV>…</DIV>功能:分區(qū)顯示標(biāo)記。5.換行標(biāo)記格式:<BR>功能:強(qiáng)制換行。6.水平線標(biāo)記格式:<HR>功能:插入水平線標(biāo)記。

7.注釋標(biāo)記格式:<!--注釋內(nèi)容-->功能:注釋標(biāo)記。

2.2文檔的格式與風(fēng)格<HTML><HEAD><TITLE>標(biāo)記的使用</TITLE></HEAD><BODY><!--注釋

本程式的功能是:

製作簡單網(wǎng)頁熟悉基本標(biāo)記的使用!

--><Palign=center>三種標(biāo)記的使用!</P><HR><DIValign=center>我在中間!<BR>中間</DIV><HR><DIValign=left>我在左邊!<BR>左邊</DIV><HR><DIValign=right>我在右邊!<BR>右邊</DIV><HR></BODY></HTML>

2.2文檔的格式與風(fēng)格2.2.3

建立列表1.有序列表格式:<OLtype="符號類型"><LItype="符號類型">…</LI><LItype="符號類型">…</LI>…</OL>type屬性:數(shù)字(1,2,…)、大寫英文字母(A,B,…)、小寫英文字母(a,b,…)、大寫羅馬字母(I,II,…)和小寫羅馬字母(i,ii,…),默認(rèn)的序號是數(shù)字。2.2文檔的格式與風(fēng)格2.2.3

建立列表2.無序列表格式:<ULtype="符號類型"><LItype="符號類型">…</LI><LItype="符號類型">…</LI>…</UL>type屬性:可以為disc(實(shí)心圓點(diǎn))、circle(空心圓點(diǎn))、square(方塊)和自定義圖片,默認(rèn)為實(shí)心圓點(diǎn)。

2.2文檔的格式與風(fēng)格2.2.3

建立列表3.自定義列表格式:<DL><DT>…</DT><DD>…</DD><DT>…</DT><DD>…</DD>…</DL>

<DL>定義列表;<DT>定義列表項(xiàng),專案會自動換行並左對齊,但專案間沒有空行;<DD>用來定義語句。

2.2文檔的格式與風(fēng)格2.2.4字元的格式化1.字體設(shè)置標(biāo)記格式:<FONT>…</FONT>功能:設(shè)置字體格式標(biāo)記。

標(biāo)記屬性功能size=size設(shè)置文字的大小face=fontstyle設(shè)置字體color=colorvalue設(shè)置文字的顏色2.2文檔的格式與風(fēng)格2.2.4字元的格式化2.其他標(biāo)記其他標(biāo)記格式功能<U>…</U>給字元加下劃線<S>…</S>給字元上加橫線,表示刪除<B>…</B>給字元加粗<I>…</I>將字元設(shè)置成斜體<BLINK>…</BLINK>標(biāo)記使得其中的文字產(chǎn)生閃爍的效果2.3加入多媒體與超級鏈接

圖像的出現(xiàn)為本來單調(diào)乏味的網(wǎng)路世界增添了一道亮麗的風(fēng)景線。圖像在網(wǎng)頁設(shè)計(jì)中是必不可少的,所以用戶應(yīng)該掌握在網(wǎng)頁中操作圖像的方法。2.3加入多媒體與超級鏈接插入多媒體的一般形式:格式:<IMG>…</IMG>功能:在網(wǎng)頁中加入圖像、視頻、動畫等。

2.3加入多媒體與超級鏈接1.插入圖像標(biāo)記屬性功能src=URL通過URL給出圖像來源的位置,不可缺省width=size設(shè)置圖像寬度height=size設(shè)置圖像高度alt=txt設(shè)置在圖像未載入前圖片位置顯示的文字border=size設(shè)置圖像邊框,缺省為0align=alignstyle設(shè)置對齊方式。取值為:top,middle,bottom,left,righthspace=size設(shè)置圖片左右邊沿空白vspace=size設(shè)置圖片上下邊沿空白2.3加入多媒體與超級鏈接2.插入視頻標(biāo)記屬性功能dynsrc=URL設(shè)置多媒體來源位置loop=size設(shè)置視頻播放的次數(shù)loopdelay=time設(shè)置兩次播放的間隔時間start=value指定何時開始播放視頻檔2.3加入多媒體與超級鏈接2.3.2加入超級鏈接格式:<A>…</A>功能:在當(dāng)前頁和其他頁間建立超鏈接。標(biāo)記屬性功能href=URL給定鏈接目標(biāo)的位置target=frametarget設(shè)置顯示鏈接目標(biāo)的框架accesskey=character設(shè)置快捷鍵tabindex=num設(shè)置Tab鍵的順序rel=linktype設(shè)置到鏈接的關(guān)係2.4製作表格

表格可以把文字和圖片等內(nèi)容按照行和列排列起來,可以用來建立主頁的框架,使得整個網(wǎng)頁更加清晰和條理化,有利於資訊的表達(dá)。2.4製作表格2.4.1建立表格格式:<TABLE>…</TABLE>標(biāo)記屬性功能border=size設(shè)置表格邊框大小width=size設(shè)置表格的寬度height=size設(shè)置表格的高度cellspacing=size設(shè)置單元格間距cellpadding=size設(shè)置單元格的填充距background=URL設(shè)置表格背景圖片bgcolor=colorvalue設(shè)置表格背景色align=alignstyle設(shè)置對齊方式cols=size設(shè)置表格的列數(shù)2.4製作表格2.4.2定制表格格式:<TR>…</TR>。功能:定義表格的一行。格式:<TD>…</TD>。功能:定義單元格。

標(biāo)記屬性功能bgcolor=colorvalue設(shè)置行背景顏色align=alignstyle設(shè)置行對齊方式valign=valignstyle設(shè)置單元格垂直對齊方式2.4製作表格2.4.2定制表格格式:<CAPTION>…</CAPTION>功能:定義表格標(biāo)題,可以通過align屬性設(shè)置標(biāo)題的對齊方式。標(biāo)記屬性功能bgcolor=colorvalue設(shè)置單元格背景顏色rowspan=num設(shè)置單元格所占的行數(shù)colspan=num設(shè)置單元格所占的列數(shù)align=alignstyle設(shè)置對齊方式valign=valignstyle設(shè)置單元格垂直對齊方式width=size設(shè)置單元格寬度height=size設(shè)置單元格高度2.5製作表單

表單是用戶和Web應(yīng)用程式、Web資料庫等進(jìn)行交互的介面。在Web上,通過表單可以完成用戶和電腦或伺服器之間進(jìn)行的資訊交換。

2.5製作表單2.5.1表單的結(jié)構(gòu)格式:<FORMaction=URLmethod=postmethodonsubmit=scripttarget=frametargetaccept-charset=cdataenctype=contenttype>

…</FORM>功能:定義表單。2.5製作表單2.5.2FORM中常用的標(biāo)記1.輸入域(1)單行輸入域。格式:<INPUT>。標(biāo)記屬性功能type=inputtype設(shè)置輸入域的類型name=cdata設(shè)置表項(xiàng)的控制名,在表單處理時起作用(適用於除submit和reset外的其他類型)size=num設(shè)置表單域的長度maxlength=num設(shè)置允許輸入的最大字符數(shù)(適用於text和password類型)value=cdata設(shè)置輸入域的值(適用於radio和checkbox類型)checked設(shè)置是否被選中(適用於radio,button,checkbox類型)2.5製作表單1)text類型。2)password類型。3)radio類型。4)checkbox類型。5)submit類型。6)reset類型。7)hidden類型。2.5製作表單(2)多行輸入域。格式為:<TEXTAREA>…<TEXTAREA>功能:定義多行文本輸入域。標(biāo)記屬性功能name=cdata設(shè)置FORM提交的輸入資訊的名稱rows=num設(shè)置文本域的行數(shù)cols=num設(shè)置文本域的列數(shù)tabindex=num設(shè)置tab鍵的次序2.5製作表單2.按鈕格式:<BUTTON>…</BOTTON>功能:定義按鈕。

標(biāo)記屬性功能name=cdata設(shè)置已發(fā)送表單的關(guān)鍵字value=cdata設(shè)置已發(fā)送表單的值type=buttontype設(shè)置按鈕的類型tabindex=num設(shè)置tab鍵的次序2.5製作表單3.選擇域格式:<SELECT><OPTION>選項(xiàng)一

<OPTION>選項(xiàng)二

…</SELECT>功能:定義選擇欄。

標(biāo)記屬性功能name=cdata設(shè)置選擇欄的名字size=num設(shè)置在選擇欄中一次可見的選項(xiàng)個數(shù)multiple設(shè)置選項(xiàng)欄是否支持多選標(biāo)記屬性功能value=cdata設(shè)置選項(xiàng)的默認(rèn)值selected表示此選項(xiàng)為預(yù)置項(xiàng)<option>屬性:<select>屬性:2.6

框架結(jié)構(gòu)

2.6.1框架結(jié)構(gòu)的檔格式<HTML><HEAD>

…</HEAD><FRAMESET><FRAME>

…<FRAME>

…</FRAMESET></HTML>注意:含有框架結(jié)構(gòu)的網(wǎng)頁其HTML的形式和一般的HTML檔相似,只是在文檔中,若使用了<FRAMESET>,就不應(yīng)該有<BODY>標(biāo)記。在老版本的流覽器可能不支持框架結(jié)構(gòu)。

2.6

框架結(jié)構(gòu)2.6.2框架結(jié)構(gòu)標(biāo)記的使用格式:<FRAMESET>…</FRAMESET>功能:定義一個框架容器。標(biāo)記屬性功能rows=size設(shè)置多重框架的高度cols=size設(shè)置多重框架的寬度onload=script設(shè)置框架被載入的事件onunload=script設(shè)置框架被卸載的事件2.6

框架結(jié)構(gòu)2.6.3FRAME標(biāo)記格式:<FRAME>功能:在網(wǎng)頁中定義框架。標(biāo)記屬性功能src=URL設(shè)置要鏈接到的HTML檔name=framename表示子窗口的名字marginwidth=size用來控制顯示內(nèi)容和窗口左右邊界的距離,默認(rèn)為1marginheight=size用來控制顯示內(nèi)容和窗口上下邊界的距離,默認(rèn)為1scrolling=scrollingstyle指定子窗口是否使用滾動條,有YES/NO/AUTO三個值,默認(rèn)為AUTO,即根據(jù)窗口內(nèi)容決定是否有滾動條noresize使用該屬性後,指定窗口不能調(diào)整窗口大小2.6

框架結(jié)構(gòu)2.6.4TARGET屬性的使用1.用於A標(biāo)記2.用於BASE標(biāo)記3.用於FORM標(biāo)記本章首頁2.7CSS基礎(chǔ)2.7.1CSS樣式簡介CSS(CascadingStyleSheets,層疊樣式表),又稱格式頁,是近幾年才發(fā)展起來的新技術(shù)。它提供了很多的樣式定義方式來輔助HTML。

本章首頁2.7CSS基礎(chǔ)<HTML><HEAD><TITLE>CSS樣式</TITLE><STYLEtype="text/css"><!--H3{font-family:arial;font-size:12pt;font-style:normal;color:blue;}--></STYLE></HEAD><BODY><H3>CSS樣式文本!arial,12pt,normal,blue!</H3></BODY></HTML>

本章首頁2.7CSS基礎(chǔ)2.7.2CSS樣式表的定義1.通過HTML標(biāo)記定義定義任何一個HTML標(biāo)記,定義時在屬性和屬性值之間用“:”隔開,當(dāng)有多重屬性時,使用“;”進(jìn)行分隔。2.用id屬性定義樣式表id以(#)開頭,把標(biāo)準(zhǔn)的屬性和屬性值寫入大括弧內(nèi)。id屬性的作用是:在調(diào)用JavaScript語言時,作為一個獨(dú)立的名稱來識別網(wǎng)頁中的一個元素,如果不是因?yàn)橐诰W(wǎng)頁中使用JavaScript語言,這種標(biāo)記應(yīng)儘量少用,因?yàn)樗哂幸欢ǖ木窒扌浴?.使用class定義樣式表使用class的方法和id的方法基本相同,class以“.”開頭,然後再把標(biāo)準(zhǔn)的屬性和屬性值寫入大括弧內(nèi)。本章首頁3.1VBScript腳本語言概述3.1.1伺服器端腳本和客戶端腳本伺服器端腳本在Web伺服器上執(zhí)行,由伺服器根據(jù)腳本的執(zhí)行結(jié)果生成相應(yīng)的HTML頁面併發(fā)送到客戶端流覽器中並顯示。只有伺服器端腳本才能真正地實(shí)現(xiàn)“動態(tài)網(wǎng)頁”。伺服器端腳本的執(zhí)行不受流覽器的限制,腳本在網(wǎng)頁通過網(wǎng)路傳送給流覽器之前被執(zhí)行,Web流覽器收到的只是標(biāo)準(zhǔn)的HTML檔。

客戶端腳本由流覽器解釋執(zhí)行。由於客戶端腳本隨著HTML頁面下載到客戶端流覽器,在用戶本地執(zhí)行,因此其執(zhí)行速度明顯快於伺服器端腳本。

3.1VBScript腳本語言概述3.1.2VBScript腳本語言編程實(shí)例1.伺服器端腳本<%@LANGUAGE="VBScript"%><HTML><BODY><FONTSIZE=7><%Response.Write“歡迎使用

VBScript腳本語言!"%></FONT></BODY></HTML>

3.1VBScript腳本語言概述2.客戶端腳本一般形式如下:<SCRIPTLANGUAGE="language"[EVENT="event"][FOR="object"]><!--腳本代碼--></SCRIPT>屬性的意義:LANGUAGE:指定使用哪一種腳本語言,不同的流覽器支持的腳本語言是不一樣的。EVENT:指定與此段腳本相關(guān)聯(lián)的事件。FOR:指定與事件相關(guān)聯(lián)的對象。3.1VBScript腳本語言概述3.1.3VBScript和JavaScript相關(guān)性能VBScriptJavaScript程式格式嵌入到HTML中嵌入到HTML中數(shù)據(jù)類型採用複合的單一變數(shù)類型,使用DIM定義後使用採用鬆散數(shù)據(jù)類型,變數(shù)不用定義可直接使用對象概念無法自定義對象類型,使用系統(tǒng)對象,無類和繼承的概念,可定義函數(shù)過程和副程式過程無法自定義對象類型,使用系統(tǒng)對象,無類和繼承的概念,只能定義函數(shù)執(zhí)行方式有流覽器內(nèi)部虛擬機(jī)處理有流覽器內(nèi)部虛擬機(jī)處理安全性安全性高,嚴(yán)禁寫入磁片安全性高,嚴(yán)禁寫入磁片3.2基本數(shù)據(jù)類型及輸入輸出3.2.1將單行語句分成多行在編寫程式代碼時,有的語句可能會很長,為了在閱讀和對程式查錯時直觀、方便,可使用續(xù)行符“-”(由一個空格和一個下劃線組成),將長的語句分成多行書寫。下麵舉例說明將單行語句分成多行書寫的程式編寫方法。3.2基本數(shù)據(jù)類型及輸入輸出3.2.2在代碼中加注釋注釋的一般格式為:格式一:

Rem注釋內(nèi)容格式二:

′注釋內(nèi)容或語句′注釋內(nèi)容

3.2基本數(shù)據(jù)類型及輸入輸出3.2.3使用不同進(jìn)制的數(shù)字在VBScript中,除了可以使用默認(rèn)的十進(jìn)位來表示數(shù)字外,還允許使用十六進(jìn)制或八進(jìn)制來表示數(shù)字。對於不同進(jìn)制的數(shù),VBScript在表達(dá)方式上有明確規(guī)定,即十六進(jìn)制數(shù)要加首碼&H(如&H9),八進(jìn)制數(shù)要加首碼&0(數(shù)字零)或&O(字母O)(如&011或&O11),十進(jìn)位數(shù)不用加任何首碼。3.2基本數(shù)據(jù)類型及輸入輸出3.2.4數(shù)據(jù)類型及其子類型Byte(位元組)、String(字串)、Integer(整型)、Long(長整型)、Single(單精確度浮點(diǎn)數(shù))、Double(雙精度浮點(diǎn)數(shù))、Currency(貨幣)、Boolean(布爾型)、Date/Time(日期/時間)、Empty(空類型)、Null(空值)、Object(對象)、Error(錯誤)。3.2基本數(shù)據(jù)類型及輸入輸出3.2.5變數(shù)1.變數(shù)命名規(guī)則變數(shù)的名字必須以字母開頭。名字中不能含有句號。名字不能超過255個字元。名字不能和VBScript中的關(guān)鍵字同名。變數(shù)名在被聲明的作用域內(nèi)必須惟一。3.2基本數(shù)據(jù)類型及輸入輸出2.聲明變數(shù)(1)隱式聲明方式。使用一個變數(shù)前並不需要聲明,而可以直接在腳本代碼中使用,系統(tǒng)會自動地在內(nèi)存中開闢存儲區(qū)域登記變數(shù)名。(2)顯式聲明方式。使用變數(shù)聲明語句Dim、Public和Private語句。顯式聲明可以在定義變數(shù)的時候?yàn)樽償?shù)在內(nèi)存中預(yù)留空間,登記變數(shù)名。

3.2基本數(shù)據(jù)類型及輸入輸出為了區(qū)分不同類型的變數(shù),可以通過變數(shù)名的首碼來指明該變數(shù)的子類型。子類型前

綴示

例子類型前

綴示

例IntegerIntIntYearLongLngLngNumberCurrencyCurCurMoneySingleSngSngSalaryDoubleDblDblPopulationByteBytBytCharacterBooleanBlnBlnRetiredStringStrStrNameDate(Time)DtmDtmSystemObjectObjObjTemp3.2基本數(shù)據(jù)類型及輸入輸出3.變數(shù)的作用域指的是變數(shù)的有效範(fàn)圍,在VBScript中分為過程內(nèi)有效和整個程式中都有效。在變數(shù)過程內(nèi)部聲明的變數(shù)稱為過程級變數(shù)或局部變數(shù),這樣的變數(shù)只有在聲明它們的過程中才能使用,即無法在過程外部訪問;過程外部聲明的變數(shù)稱為腳本級變數(shù)或全局變數(shù),即在同一個.asp檔中的任何腳本命令均可訪問和修改該變數(shù)的值。3.2基本數(shù)據(jù)類型及輸入輸出3.2.6常量1.文字常量(1)字串常量:用雙引號作為定界符,由ASCII碼字元組成(除雙引號和回車符外),長度不能超過20億個字元。例如:"中華人民共和國"、"1233.45"等。(2)數(shù)值常量:包括整型數(shù)、長整型數(shù)和浮點(diǎn)數(shù)。例如:0、300、-4125、&H85(表示十六進(jìn)制數(shù)85)、&O226(表示八進(jìn)制數(shù)226)、1.23E8、3.54E-5等。(3)日期時間型常量:用#號括起來。例如:#2001-3-15#、#2003-4-208:38:25AM#等。3.2基本數(shù)據(jù)類型及輸入輸出2.符號常量常量名稱常量含義True表示布爾真值False表示布爾假值Null表示空值Empty表示沒有初始化之前的值vbCr表示回車vbCrLf表示回車/換行vbTab表示跳位字元3.2基本數(shù)據(jù)類型及輸入輸出3.2.7數(shù)組VBScript中的數(shù)組有以下幾個特點(diǎn):使用數(shù)組之前要先進(jìn)行定義,然後才能使用。通常用Dim語句來定義數(shù)組。數(shù)組下標(biāo)的下界一律從0開始。一個數(shù)組中可以含有各種子類型的數(shù)據(jù)元素。在VBScript中,數(shù)組分為兩種類型,即靜態(tài)數(shù)組和動態(tài)數(shù)組。3.2基本數(shù)據(jù)類型及輸入輸出1.靜態(tài)數(shù)組靜態(tài)數(shù)組可分為一維數(shù)組、二維數(shù)組或多維數(shù)組。數(shù)組的維數(shù)和大小由數(shù)組名之後緊跟的括弧中的數(shù)字的個數(shù)和數(shù)值的大小來決定。靜態(tài)數(shù)組在編譯時開闢記憶體區(qū),因此它的大小在運(yùn)行時是不可以改變的。2.動態(tài)數(shù)組定義一般分兩步:首先用Dim語句聲明一個括弧內(nèi)不包含下標(biāo)的數(shù)組,然後在使用數(shù)組之前用ReDim語句根據(jù)實(shí)際需要重新定義下標(biāo)值。也可以用ReDim語句直接定義數(shù)組。運(yùn)行時大小可變。3.2基本數(shù)據(jù)類型及輸入輸出3.2.8基本輸入輸出1.消息對話框MsgBox(prompt[,buttons][,title][,helpfile,context])2.輸入對話框InputBox(prompt[,title][,default][,xpos][,ypos][,helpfile,context])

3.3運(yùn)算式和運(yùn)算符

3.3.1VBScript的運(yùn)算式運(yùn)算式的類型:數(shù)學(xué)運(yùn)算式、條件運(yùn)算式和字串運(yùn)算式。數(shù)學(xué)運(yùn)算式用於常規(guī)的數(shù)值運(yùn)算,運(yùn)算結(jié)果仍然為數(shù)值;條件運(yùn)算式常用於根據(jù)一系列事件的最後結(jié)果做出判斷,並採取相應(yīng)的動作,運(yùn)算結(jié)果為布爾值True或者False;字串運(yùn)算式用來將多個字串連接成一個較長的字串,運(yùn)算結(jié)果仍為字串。

VBScript中的每一種運(yùn)算式都要使用一些特殊的運(yùn)算符來幫助完成功能,運(yùn)算符一般分為兩種:單目運(yùn)算符和雙目運(yùn)算符。3.3運(yùn)算式和運(yùn)算符

3.3.2VBScript的數(shù)學(xué)運(yùn)算式及其運(yùn)算符1.?dāng)?shù)學(xué)運(yùn)算式運(yùn)算元包括數(shù)字和字串,運(yùn)算符就是+,-,*,/等運(yùn)算符。2.算術(shù)運(yùn)算符除了常用的加、減、乘、除等數(shù)學(xué)算術(shù)運(yùn)算符外,還有指數(shù)、取負(fù)、整數(shù)除、取模等,優(yōu)先順序?yàn)閺纳舷蛳轮饾u降低,其中乘法和除法的優(yōu)先順序相同,加法和減法的優(yōu)先順序相同。3.3運(yùn)算式和運(yùn)算符

3.3.3VBScript的條件運(yùn)算式及其運(yùn)算符1.條件運(yùn)算式計(jì)算結(jié)果只有兩種值:True和False。2.關(guān)係運(yùn)算符=、<、>、<=、>=、<>。3.邏輯運(yùn)算符Not、And、Or、Xor、Eqv、Imp。邏輯運(yùn)算優(yōu)先順序按從上到下逐漸降低。3.3運(yùn)算式和運(yùn)算符

3.3.4VBScript的字串運(yùn)算式1.字串運(yùn)算式在進(jìn)行字串處理時,經(jīng)常要把兩個或者更多個字串進(jìn)行連接,形成一句完整的語句。VBScript提供了字串運(yùn)算式。2.連接運(yùn)算符連接運(yùn)算符是將兩個字串運(yùn)算式連接起來,生成一個新的字串。連接運(yùn)算符有兩個:“+”和“&”。&:參與連接的兩個運(yùn)算式可以不全是字串。

+:如果連接的兩個運(yùn)算元中一個是非數(shù)字字串,另一個是數(shù)字,則會出錯。3.3運(yùn)算式和運(yùn)算符

3.3.5運(yùn)算式中的優(yōu)先順序運(yùn)算符及名稱優(yōu)先順序運(yùn)算符及名稱優(yōu)先順序運(yùn)算符及名稱優(yōu)先順序()

括弧1=等於9Or邏輯或17^乘方2<>不等於10Not邏輯非18-單目減3>大於11Xor邏輯異或19*和/

乘和除4<小於12Eqv邏輯等於20\整除5>=大於等於13Imp邏輯包含21Mod取餘6<=小於等於14

+和-加和減7Is對象相等15

&字串連接8And邏輯與16

3.4VBScript中的控制語句3.4.1控制語句VBScript提供了兩種類型的控制語句:流程控制語句和迴圈控制語句。流程控制語句通常情況下用來控制程式流程的條件轉(zhuǎn)向和選擇問題等,包括選擇語句(If…Then…Else)和多分支選擇語句(Select…Case)。迴圈控制語句用來編寫程式中所需要的特定條件下執(zhí)行過程相似的迴圈流程,包括For迴圈控制語句(For…Next)、Do迴圈控制語句(Do…Loop)和While迴圈(While…Wend)語句。

3.4VBScript中的控制語句

3.4.2條件控制語句(1)簡單條件控制語句。其語法如下:If條件運(yùn)算式

Then語句體1[Else語句體2](2)嵌套條件控制語句。語法格式如下:

If條件運(yùn)算式1Then[語句體1][ElseIf條件運(yùn)算式2Then[語句體2]]

…[Else[語句體n]]EndIf3.4VBScript中的控制語句

2.多分支結(jié)構(gòu)可以用多分支結(jié)構(gòu)來替代塊結(jié)構(gòu)的條件語句,多分支結(jié)構(gòu)比塊結(jié)構(gòu)的條件語句容易閱讀。多分支結(jié)構(gòu)的語法如下:SelectCase測試運(yùn)算式

[Case運(yùn)算式1[語句體1]][Case運(yùn)算式2[語句體2]]

…[CaseElse[語句體n]]EndSelect3.4VBScript中的控制語句3.4.3迴圈控制語句1.For迴圈(1)For…Next語句。

For迴圈變數(shù)=初值To終值[Step步長]

循環(huán)體

[ExitFor]

Next[迴圈變數(shù)](2)ForEach…Next語句

ForEach元素In集合語句體

Next[元素]3.4VBScript中的控制語句2.Do迴圈第一種:

Do[While|Until迴圈條件]

循環(huán)體

[ExitDo]Loop

第二種:

Do

循環(huán)體

[ExitDo]Loop[While|Until迴圈條件]

3.4VBScript中的控制語句3.While迴圈While迴圈條件循環(huán)體WendWhile迴圈是先判斷迴圈條件,根據(jù)迴圈條件的值來決定是否執(zhí)行循環(huán)體。如果迴圈條件為真或不為0時執(zhí)行循環(huán)體,直到迴圈條件不滿足時退出While迴圈。3.4VBScript中的控制語句3.4.4其他常用簡單語句1.Rem語句

Rem注釋語句2.Erase語句

Erase數(shù)組名3.Set語句和Let語句

SetobjectVar=數(shù)值4.Rnd函數(shù)變數(shù)=Rnd*倍數(shù)3.5VBScript函數(shù)及子過程

3.5.1過程VBScript的過程有如下幾個特點(diǎn):過程只能有單一入口,但可以有多個出口。在流覽器的任何一個網(wǎng)頁中都可以定義過程,習(xí)慣上將過程定義在<HEAD>和</HEAD>中??梢杂昧饔[器所特有的事件來調(diào)用。通過過程可以將重複使用的代碼單獨(dú)定義,提高代碼利用率。使得查錯和改錯工作變得簡單??梢韵蜻^程中傳遞任何有效的參數(shù)。3.5VBScript函數(shù)及子過程

3.5.2子過程Sub過程是沒有返回值的過程,一般格式如下:[Private][Public]Sub過程名[(參數(shù)列表)][語句塊][ExitSub][語句塊]EndSub用Call語句調(diào)用子過程的語法如下:Call子過程名([參數(shù)列表])

3.5VBScript函數(shù)及子過程

3.5.3函數(shù)[Private][Public]Function過程名[(參數(shù)列表)][語句塊]

函數(shù)名=運(yùn)算式

[ExitFunction][語句塊]EndFunction可以用Call語句來調(diào)用函數(shù)。3.5VBScript函數(shù)及子過程

3.5.4Exit語句如果需要中斷一個子過程,則需要在子過程中使用ExitSub語句,如果想要中斷一個函數(shù),則需要在函數(shù)中使用ExitFunction語句。3.5VBScript函數(shù)及子過程3.5.5VBScript內(nèi)部函數(shù)摘要1.?dāng)?shù)學(xué)函數(shù):包括求平方根、絕對值、指數(shù)和對數(shù)函數(shù)等。

2.字串函數(shù):字串函數(shù)用於對字串進(jìn)行相應(yīng)的處理。

3.日期和時間函數(shù)。

4.?dāng)?shù)據(jù)類型轉(zhuǎn)換函數(shù):用於將一種類型的數(shù)據(jù)轉(zhuǎn)換成其他類型的數(shù)據(jù)。

5.?dāng)?shù)據(jù)類型判別函數(shù):用於測試數(shù)據(jù)的子類型。

6.?dāng)?shù)組處理函數(shù)。3.6VBScript的對象和事件

3.6.1對象和事件的概念對象是在流覽器中或者腳本編寫中用於綜合地描述一組功能和事件的組合體。所有的網(wǎng)頁對象都有一定的屬性和方法,在VBScript中使用對象和屬性名稱時是區(qū)分大小寫的。當(dāng)使用VBScript的網(wǎng)頁在流覽器中產(chǎn)生事件時,流覽器會把消息傳遞給VBScript的虛擬機(jī),再將程式轉(zhuǎn)到某對象的事件處理過程去處理。常用的事件有Click單擊事件、Focus聚焦事件、Load加載事件和Submit提交事件等。3.6VBScript的對象和事件3.6.2網(wǎng)頁及流覽器對象1.Windows窗口對象2.Document文檔對象3.Location位置對象4.History歷史對象5.Form表單對象本章首頁3.6VBScript的對象和事件3.6.3流覽器內(nèi)嵌HTML控件處理事件的一般過程有以下幾種方式:當(dāng)表單對象被滑鼠單擊時,產(chǎn)生Click事件,OnClick()事件處理過程開始啟動執(zhí)行。表單內(nèi)的選擇對象或者文本對象不再被聚焦時,產(chǎn)生Blur事件,OnBlur()事件處理過程開始啟動執(zhí)行。相應(yīng)的對象被改變時,產(chǎn)生Change事件,OnChange()事件處理過程開始執(zhí)行。對象被聚焦時,例如當(dāng)滑鼠移動到對象上時即產(chǎn)生了Focus事件,OnFocus()事件處理過程開始啟動並執(zhí)行。4.1ASP內(nèi)置對象ASP提供了Request,Response,Server,Session,Application和ObjectContext共6個內(nèi)置對象,這些對象在使用時並不需要經(jīng)過任何聲明或建立的過程。對象名稱對象功能Request對象負(fù)責(zé)從用戶端接收資訊Response對象負(fù)責(zé)傳送資訊給用戶Server對象負(fù)責(zé)控制ASP的運(yùn)行環(huán)境Session對象負(fù)責(zé)存儲個別用戶的資訊,以便重複使用Application對象負(fù)責(zé)存儲數(shù)據(jù)以供多個用戶使用ObjectContext對象可供ASP程式直接配合MicrosoftTransactionServer(MTS)進(jìn)行分佈式的事務(wù)處理4.2Response對象Response對象用於動態(tài)回應(yīng)客戶端請求,並將動態(tài)生成的回應(yīng)結(jié)果以HTML超文本的格式輸出到客戶端流覽器中。Response的使用語法為:Response.collection|property|method其中collection表示Response對象的集合,property表示Response對象的屬性,method表示Response對象的方法。三個參數(shù)只能選擇其中的一個。4.2Response對象4.2.1Response對象的屬性屬性功能說明Buffer表明頁輸出是否被緩衝CacheControl決定代理伺服器是否能緩存ASP生成的輸出Charset將字元集的名稱添加到內(nèi)容類型標(biāo)題中ContentType指定回應(yīng)的HTTP內(nèi)容類型Expires在流覽器中緩存的頁面超時前,指定緩存的時間ExpiresAbsolute指定流覽器上緩存頁面超時的日期和時間IsClientConnected表明客戶端是否與伺服器斷開Pics將PICS標(biāo)記的值添加到回應(yīng)的標(biāo)題的PICS標(biāo)記字段中Status伺服器返回的狀態(tài)行的值4.2Response對象4.2.2Response對象的方法方法功能說明AddHeader設(shè)置HTML標(biāo)題AppendToLog在Web伺服器的日誌檔中記錄日誌BinaryWrite按照位元組格式向客戶端流覽器輸出數(shù)據(jù),不進(jìn)行任何字元集的轉(zhuǎn)換Clear清除伺服器中緩存的HTML資訊End停止處理.asp檔並返回當(dāng)前的結(jié)果Flush立即發(fā)送緩衝的輸出Redirect重定向當(dāng)前頁面,嘗試連接另外一個URLWrite直接向客戶端流覽器輸出數(shù)據(jù)4.2Response對象4.2.3Response對象的數(shù)據(jù)集合Response對象只有Cookies一個數(shù)據(jù)集合,Cookies數(shù)據(jù)集合是負(fù)責(zé)取得記錄在客戶端的Cookies數(shù)據(jù),允許用戶檢索在HTTP請求中發(fā)送的Cookies的值。4.3Request對象利用Request對象可以在伺服器端獲得用戶端通過Web頁面提交的資訊。在ASP中,利用Request對象收集用戶資訊,Response對象向用戶端輸出資訊,可以實(shí)現(xiàn)用戶端和服務(wù)器端的交互。Request對象的語法如下:Request[.collection|property|method](variable)4.3Request對象4.3.1Request對象的屬性Request對象只提供一個TotalBytes屬性,這是一個只讀的屬性,表示從客戶端所接收數(shù)據(jù)的位元組的長度,其語法如下:位元組長度=Request.TotalBytes例:<%Response.Write“從客戶端接收的數(shù)據(jù)位元組大小為:"&Request.TotalBytes%>本章首頁4.3Request對象4.3.2Request對象的方法Request對象只提供一種BinaryRead方法,該方法是以二進(jìn)位方式來讀取客戶端使用POST傳送方法所傳遞的數(shù)據(jù)。其語法如下:Variant數(shù)組=Request.BinaryRead(Count)BinaryRead方法的返回值為通用變數(shù)數(shù)組(VariantArray),其參數(shù)Count是一個整型數(shù)據(jù),用以表示每次讀取數(shù)據(jù)的位元組大小,範(fàn)圍介於0到Request對象TotalBytes方法所取得的位元組大小之間。4.3Request對象4.3.3Request的數(shù)據(jù)集合(Collections)集合保存用戶端的資訊,其使用語法如下:Request[.collection]("variable")collection指定Request對象的數(shù)據(jù)集合。

集合功能說明ClientCertificate取得客戶端的身份許可權(quán)數(shù)據(jù)Cookies取得存在於客戶端流覽器的Cookies數(shù)據(jù)Form取得客戶端利用POST方式所傳遞的數(shù)據(jù)QueryString取得客戶端利用GET方式所傳遞的數(shù)據(jù)ServerVariables取得Web伺服器端的環(huán)境變數(shù)資訊5.1Session概述HTTP協(xié)議是一種無狀態(tài)(stateless)的協(xié)議,利用HTTP協(xié)議無法跟蹤用戶。伺服器完成用戶的請求後,伺服器將不能再繼續(xù)保持與該用戶流覽器的連接。利用Session可以存儲流覽者的一些特定資訊。在ASP中Session代表了伺服器與客戶端之間的“會話”。5.2Session對象的使用

5.2.1Session變數(shù)的創(chuàng)建與使用Session("變數(shù)名稱")Session變數(shù)是與特定用戶相聯(lián)系的,針對某一個用戶賦值的Session變數(shù)是和其他用戶的Session變數(shù)完全獨(dú)立的,不會相互影響。Session對象的使用語法如下:Session.collection|property|method其中collection表示Session對象的集合,property表示Session對象的屬性,method表示Session對象的方法。5.2Session對象的使用5.2.2Session對象的屬性1.TimeOut屬性用來設(shè)置Session的最長間隔時間。2.SessionID屬性記錄著每個Session的代號,是一個不重複的長整型數(shù)字。3.CodePage屬性表示字串編碼及轉(zhuǎn)換的依據(jù)。4.LCID屬性設(shè)置網(wǎng)頁要以客戶端當(dāng)?shù)氐南嚓P(guān)設(shè)置來顯示。5.2Session對象的使用5.2.3Session對象的方法Session對象只提供了Abandon方法,該方法將刪除所有存儲在Session對象中的對象數(shù)據(jù)並釋放它們所佔(zhàn)有的資源。如果沒有明確調(diào)用Abandon方法,伺服器在Session對象TimeOut屬性規(guī)定的時間後刪除對象數(shù)據(jù)。當(dāng)伺服器刪除Session對象時,將無法再取得其變數(shù)值,而且Session_OnEnd事件將一起被啟動。語法如下:Session.Abandon5.2Session對象的使用5.2.4Session對象的集合1.Contents集合包括所有未使用<OBJECT>標(biāo)記而為該會話建立的專案,此集合可確定指定會話項(xiàng)的值或遍曆集合並檢索出會話中所有項(xiàng)的列表。語法:Session.Contents(Session變數(shù)名稱)2.StaticObject集合包含Session對象範(fàn)圍中用<OBJECT>標(biāo)記創(chuàng)建的所有對象,該集合可用於確定對象特定屬性的值,或用於遍曆集合並獲取所有對象的全部屬性。語法如下:Session.StaticObjects(對象變數(shù)名稱)5.2Session對象的使用5.2.5Session對象的事件事件:Session_OnEnd和Session_OnStart。Session_OnStart事件對應(yīng)Session對象的起始事件,每當(dāng)產(chǎn)生一個Session對象,該事件所定義的代碼都將被啟動;Session_OnEnd事件對應(yīng)Session對象的結(jié)束事件,當(dāng)Session對象被終止或失效時,該事件所對應(yīng)的代碼被啟動。5.2Session對象的使用這兩個事件的代碼必須放在global.asa檔中,其語法:<SCRIPTLANGUAGE=ScriptLanguageRUNAT=Server>SubSession_OnStart'事件的處理程式代碼

EndSub

SubSession_OnEnd'事件的處理程式代碼

EndSub</SCRIPT>

5.3Cookie的使用

Session實(shí)際上是利用Cookie進(jìn)行資訊處理的,當(dāng)用戶向伺服器提出了某個Session請求後,伺服器就在用戶的流覽器上創(chuàng)建了一個Cookie,當(dāng)這個Session結(jié)束時,也就意味著這個Cookie過期了??梢岳肧erverVariables集合的CookieHeader來接收這個Cookie資訊,代碼如下:<%=Request.ServerVariables("HTTPCookie")%>5.3Cookie的使用5.3.1Cookie概述Cookie實(shí)際上是一個字串或一個標(biāo)誌,當(dāng)一個包含Cookie的頁面被用戶流覽器讀取時,一個Cookie就被存入到本地硬碟中,當(dāng)需要時該網(wǎng)站可以從用戶的本地硬碟中讀取這些Cookie。所有的Cookie都被存放在Windows\Cookies(Windows98中)目錄下,存放Cookie的檔案名命名規(guī)則為:用戶名@網(wǎng)站名.txt,有時也使用IP地址來描述網(wǎng)站。5.3Cookie的使用5.3.2創(chuàng)建Cookie格式如下:Response.Cookies(Cookie)[(key)|attribute]=Value1.創(chuàng)建單值的Cookie要創(chuàng)建不帶關(guān)鍵字key的Cookie,只需指定參數(shù)Cookie的值以及value的值。2.創(chuàng)建帶有關(guān)鍵字的Cookie字典需要帶上key參數(shù)。5.3Cookie的使用5.3.3讀取Cookie的值格式如下:Request.cookies(Cookie)[(key)|.attribute]1.讀取單值的Cookie對於一般不帶關(guān)鍵字的Cookie,可以採用指定Cookie名稱的方式來檢索Cookie的值。2.讀取Cookie字典對於Cookie字典的檢索和讀取,可以通過使用關(guān)鍵字來進(jìn)行,也可以使用序號來進(jìn)行。5.3Cookie的使用5.3.4使用Cookie進(jìn)行數(shù)據(jù)提交5.4Application對象概述

Application包含的數(shù)據(jù)可以在整個Web站點(diǎn)中被所有用戶使用,並且可以在網(wǎng)站運(yùn)行期間持久保存數(shù)據(jù)。Application對象和Session對象有很多相似之處,它們的功能都是用於在不同的ASP頁面之間共用資訊。兩者的區(qū)別主要有:應(yīng)用範(fàn)圍不同。存活時間不同。5.5Application對象的使用

5.5.1Application變數(shù)的創(chuàng)建與使用Application變數(shù)的創(chuàng)建與使用和Session變數(shù)的創(chuàng)建與使用類似。Application變數(shù)終止的情況有三種:服務(wù)被終止、Global.asa被改變或者該Application被卸載。Application對象的使用語法為:Aperty|method其中:property表示Application對象的屬性,method表示Application對象的方法。5.5Application對象的使用5.5.2Application對象的方法可以利用Application對象的Lock和Unlock方法確保多個用戶無法同時改變某一屬性。前者用來避免其他用戶修改Application對象的任何變數(shù),而後者則是允許其他用戶對Application的變數(shù)進(jìn)行修改。方法用途Lock鎖定Application變數(shù),這樣其他用戶就不能修改它Unlock解除Application變數(shù)的鎖定狀態(tài)5.5Application對象的使用5.5.3Application對象的事件有Application_OnEnd和Application_OnStart。也必須放在Global.asa檔中。<SCRIPTLANGUAGE=ScriptLanguageRUNAT=Server>SubApplication_OnStart

...'事件的處理代碼EndSubSubApplication_OnEnd

...'事件的處理代碼

EndSub</SCRIPT>

5.5Application對象的使用5.5.4Application對象的集合1.Contents數(shù)據(jù)集合允許程式取得用戶能用的所有Application對象,但不包括以<OBJECT>標(biāo)籤建立的對象及Server對象的CreateObject方法所建立的對象。可以使用它獲取給定應(yīng)用程式作用域的專案列表或指定一個特殊專案為操作對象。2.StaticObjects數(shù)據(jù)集合可取得以<OBJECT>標(biāo)記所建立的Application對象,可使用該集合確定某對象指定屬性的值或遍曆集合及檢索所有靜態(tài)對象的所有屬性。6.1Server對象

Server對象提供了對伺服器上的方法和屬性的訪問,其中大多數(shù)方法和屬性是為應(yīng)用程式提供服務(wù)的。語法如下:Sperty|method其中property表示Server對象的屬性,method表示Server對象的方法。6.1Server對象6.1.1Server對象的屬性Server對象只有一個ScriptTimeout屬性,該屬性用於設(shè)置一個ASP腳本所允許的最長執(zhí)行時間。如果在指定的時間內(nèi)腳本沒有執(zhí)行完畢,系統(tǒng)將停止其執(zhí)行,並且顯示超時錯誤。語法如下:Server.ScriptTimeout=NumSeconds其中的參數(shù)NumSeconds以“秒”為單位,系統(tǒng)的默認(rèn)值為90秒,可以在IIS中重新設(shè)定。6.1Server對象6.1.2Server對象方法Server對象提供了CreateObject,HTMLEncode,MapPath,URLEncode等方法。方法描述CreateObject創(chuàng)建伺服器組件的實(shí)例HTMLEncode將HTML編碼應(yīng)用到指定的字串MapPath將指定的虛擬路徑(無論是當(dāng)前伺服器上的絕對路徑,還是當(dāng)前頁的相對路徑)映射為物理路徑URLEncode將URL編碼規(guī)則(包括轉(zhuǎn)義字元)應(yīng)用到字串6.1Server對象1.CreateObject方法創(chuàng)建一個已在伺服器上註冊的ActiveXServer組件的實(shí)例。語法如下:Set對象=Server.CreateObject(“ActiveX組件”)

建立的對象,當(dāng)伺服器端執(zhí)行完其所在的ASP頁後,伺服器將自動破壞這些實(shí)例對象,也可以在ASP程式中通過如下腳本清除創(chuàng)建的對象實(shí)例:<%fs=nothing%>

6.1Server對象2.MapPath方法將指定的虛擬路徑轉(zhuǎn)換為伺服器上相應(yīng)的物理路徑,這裏的虛擬路徑是指在Web伺服器中建立的虛擬目錄。語法如下:真實(shí)的路徑=Server.MapPath("String")String是用於指定虛擬路徑的字串。MapPath方法不支持相對路徑語法(.)或(..),但將“\”字元與“/”視為相同。還可以使用Request對象的伺服器變數(shù)PATH_INFO映射當(dāng)前檔的物理路徑。6.1Server對象3.HTMLEncode方法對指定的字串應(yīng)用HTML編碼。語法如下:Server.HTMLEncode(string)其中String指定要編碼的字串。想要在流覽器中原樣輸出HTML標(biāo)記字元,即流覽器不對這些標(biāo)記進(jìn)行解釋,可使用本方法。6.1Server對象4.URLEncode方法URLEncode方法將指定的字串進(jìn)行URL編碼,語法如下:Server.URLEncode(string)其中String指定要編碼的字串。對於URL,一些ASCII字元具有特殊的含義(例如空格),使用編碼的方法可以使這些字元加入U(xiǎn)RL時忽略它們自身的含義。Server.URLEncode方法將這些ASCII字元轉(zhuǎn)化成URL中等效的字元??崭裼谩?”代替,ASCII碼大於126的字元用“%”後跟16進(jìn)制代碼進(jìn)行替換。6.2ObjectContext對象

ObjectContext對象是一個以組件為主的事務(wù)處理系統(tǒng),可以保證事務(wù)的成功完成。使用ObjectContext對象,允許程式在網(wǎng)頁中直接配合MicrosoftTransactionServer(MTS)使用,從而可以管理或開發(fā)高效率的Web伺服器應(yīng)用程式。事務(wù)是一個操作序列,這些序列可以視為一個整體。如果其中的某個步驟沒有完成,所有與該操作相關(guān)的內(nèi)容都應(yīng)該取消。事務(wù)用於提供對數(shù)據(jù)庫進(jìn)行可靠的操作。6.2ObjectContext對象在ASP中使用@TRANSACTION關(guān)鍵字來標(biāo)識正在運(yùn)行的頁面要以MTS事務(wù)伺服器來處理,語法如下:<%@TRANSACTION=value%>其中@TRANSACTION的取值有4個。值意義Required開始一個新的事務(wù)或加入一個已經(jīng)存在的事務(wù)處理中Requires_New每次都開始一個新的事務(wù)Supported加入到一個現(xiàn)有的事務(wù)處理中,但不開始一個新的事務(wù)Not_Supported既不加入也不開始一個新的事務(wù)6.2ObjectContext對象在ASP中使用@TRANSACTION指令時需注意:@TRANSACTION指令必須位於.asp檔中的第一行,否則會產(chǎn)生錯誤。事務(wù)不能跨越多個ASP頁面,如果有多個頁面使用事務(wù),必須將該指令加到每一個頁面中。當(dāng)腳本處理完成之後,當(dāng)前事務(wù)也就結(jié)束了。6.2ObjectContext對象提供了SetAbort方法將終止目前這個網(wǎng)頁所啟動的事務(wù)處理,而且將此事務(wù)先前所做的處理撤銷到初始狀態(tài),即事務(wù)“回滾”,SetComplete方法將終止目前這個網(wǎng)頁所啟動的事務(wù)處理,而且將成功地完成事務(wù)的提交。語法如下:'SetComplete方法ObjectContext.SetComplete'SetAbort方法ObjectContext.SetAbort

7.1ASP組件概述ASP組件均遵循Microsoft的ActiveX標(biāo)準(zhǔn)。ActiveX組件是一個檔,該檔包含執(zhí)行一項(xiàng)或一組任務(wù)的代碼,組件可以執(zhí)行某些特定的功能。安裝好ASP平臺後,所有的ASP內(nèi)置組件都被安裝註冊到伺服器上,調(diào)用內(nèi)置組件步驟:首先,必須創(chuàng)建組件的一個實(shí)例,並將該實(shí)例賦予一個變數(shù)。然後,調(diào)用組件的方法和屬性,完成相應(yīng)的功能。ASP的內(nèi)置組件有13種,而且還可以安裝其他第三方的組件。7.2AdRotator組件可以很容易地實(shí)現(xiàn)在Web頁面上插入一個迴圈播放廣告橫幅的播放器。語法如下:SetAdRotator變數(shù)

=Server.CreateObject("MSWC.AdRotator")

AdRotator變數(shù).屬性

=屬性值或AdRotator變數(shù).方法(迴圈定時檔路徑)

7.2AdRotator組件7.2.1AdRotator組件的屬性和方法1.AdRotator組件的屬性屬性名語法描述BorderBorder=size允許用戶指定顯示廣告時四周是否帶邊框。size指定顯示的廣告四周的邊框?qū)挾?,其默認(rèn)值在RotatorSchedule檔的檔頭中設(shè)置ClickableClickable=

value允許用戶指定是否將廣告作為超鏈接顯示。value指定廣告是否為超鏈接。參數(shù)值為布爾值:為TRUE時,將廣告作為超鏈接顯示;為FALSE時,將廣告不作為超鏈接顯示。默認(rèn)值是TRUETargetFramesTargetFrame=frame用於指定鏈接將被裝入的目標(biāo)框架。該屬性完成的功能等價於HTML語句中的TARGET參數(shù)。frame指定用來顯示廣告框架的名稱。該參數(shù)也可以是一個HTML框架關(guān)鍵字,例如_TOP,_NEW,_CHILD,_SELF,_PARENT或

_BLANK。默認(rèn)值是NOFRAME7.2AdRotator組件2.AdRotator組件的方法該組件只有GetAdvertisement一個方法,用於重新取得一個將要顯示的圖片和超文本鏈接。當(dāng)用戶第一次啟動網(wǎng)頁或重新刷新時,系統(tǒng)會重新取得下一個圖片。該方法的語法格式如下所示:GetAdvertisement(rotationSchedulePath)其中rotationSchedulePath指定RotatorSchedule檔相對於虛擬目錄的位置,例如:MyAd.GetAdvertisement("myadrot.txt")

7.2AdRotator組件7.2.2AdRotator組件相關(guān)檔AdRotator組件除了必要的Adrot.dll檔外,還要有迴圈定時檔,另外也可以有重定向檔。7.2AdRotator組件1.迴圈定時檔包含AdRotator組件用於管理和顯示各種廣告圖像的資訊。檔格式如下:[REDIRECTURL][WIDTHnumWidth][HEIGHTnumHeight][BORDERnumBorder]*adURLadHomePageURLTextimpressions

7.2AdRotator組件2.重定向檔重定向檔是AdRotator組件中的可選項(xiàng),如果在迴圈定時檔中指定使用重定向檔,每當(dāng)用戶單擊廣告時,其發(fā)出的請求對象會重定向到該檔。重定向檔是使用Request.querystring("URL")來取得與被單擊圖像相關(guān)的“URL”的。7.3BrowserCapabilities組件此組件用來獲取客戶端流覽器的類型。工作原理如下:當(dāng)客戶的流覽器連接到伺服器時,會自動向伺服器發(fā)送一個用戶代理(UserAgent)的HTTP標(biāo)頭(header),該標(biāo)頭是一個聲明

溫馨提示

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

評論

0/150

提交評論