版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
ASP基礎
1.1ASP概述1.1.1互動式動態網頁實現技術簡介1.CGI:CGI是一種通用的網關介面,是外部程式和WEB伺服器之間的標準編程介面。
2.ASP:可以認為ASP是一種類似HTML、Script與CGI的結合體,但是其運行效率卻要比CGI高。3.
PHP:PHP(HypertextPreprocessor,超文本預處理器)是一種HTML內嵌式的語言(類似於ASP)。4.JSP:JSP(JavaServerPages)是Sun公司推出的網站開發技術,是將純Java代碼嵌入HTML中實現動態功能的一項技術。1.1ASP概述1.1.2ASP的特性ASP可以包含伺服器端腳本。ASP提供了幾種內置對象。使用附加組件可以擴展ActiveServerPages。ASP可以與資料庫(如SQLServer、MicrosoftAccess等)建立連接,通過對數據庫的操作建立功能強大的Web應用程式。1.1ASP概述1.1.3ASP的功能
Microsoft腳本調試程式。事務性腳本。管理工具。隔離ASP應用程式。檔上載。新的ASP組件。應用程式根目錄的改變。支持InternetExplorer4.0通道和Web預測。支持HTTP1.1協議。使用腳本語言。1.2ASP的工作原理
1.2.1普通HTML的執行過程
1.2ASP的工作原理1.2.2ASP的執行過程用戶在流覽器的地址欄中鍵入ASP檔,並回車觸發這個ASP的申請。流覽器將這個ASP的請求發送到給Web伺服器。WebServer接收這些申請並根據.asp的尾碼名判斷這是ASP要求。WebServer從硬碟或記憶體中讀取正確的ASP檔。WebServer將這個檔發送到ASP.DLL的特定檔中。ASP檔將會從頭至尾執行並根據命令要求生成相應的HTML檔。HTML檔被送回流覽器。用戶的流覽器解釋這些HTML檔並將結果顯示出來。
1.3ASP的運行環境1.3.1IIS5.0的安裝和設置1.安裝IIS5.02.創建Web站點3.啟動、停止Web站點4.設置Web站點5.創建和設置虛擬目錄1.3.2PWS的安裝和設置1.PWS的安裝2.PWS的設置2.1HTML語言概述
2.1.1HTML概述
HTML是(HyperTextMarkupLanguage,超文本標記語言)的縮寫,用來表示網上資訊的符號標記語言。
HTML最早源於SGML語言.HTML語言內容豐富,從功能上大體可分為:文本結構設置、列表建立、文本屬性制定、超鏈接、圖片和多媒體插入、對象、表格以及窗體的操作。
2.1HTML語言概述2.1.2HTML文檔的結構包括HEAD、TITLE、BODY三部分,下麵是基本結構:
<HTML><HEAD>
標題部分
</HEAD><BODY>
正文部分
</BODY></HTML>
2.1HTML語言概述2.1.3HTML標記
1.HTML文檔標記格式:<HTML>…</HTML>標誌檔開始和結尾的標記。
2.HTML檔頭標記格式:<HEAD>…</HEAD>用於包含檔的基本資訊。
3.HTML檔主體標記格式:<BODY>…</BODY>檔主體標記。注意:<HEAD>與<BODY>為獨立的兩個部分,不能互相嵌套。2.1HTML語言概述2.1.4常用HTML編輯工具任何一個文檔編輯器都是HTML編輯器。為了減少網頁設計師的工作設計了專用的網頁編輯器,像Dreamweaver、FrontPage、CutePage、QuickSite等,是專門用來製作網頁的,具有所見即所得的功能。所見即所得的概念。本書例題均在FrontPage2000編輯環境中調試並通過。2.2文本的格式與風格
2.2.1設置<BODY>的屬性1.<BODY>屬性概述
background屬性bgcolor屬性bgproperties屬性link,vlink,alink屬性Leftmargin,topmargin屬性Margingwidth,marginheight屬性2.FrontPage2000中的實現2.2文本的格式與風格2.2.2段落格式化1.標題標記格式:<H1>…</H1>,<H2>…</H2>…<H6>…</H6>設置各種大小不同標題的標記。2.段落標記格式:<P>…</P>設置段落標記。3.預定格式標記格式:<PRE>…</PRE>在流覽器中流覽時,按照文檔中預先排好的形式顯示內容。2.2文本的格式與風格4.分區顯示標記格式:<DIV>…</DIV>分區顯示標記。5.詞標記這種標記有兩種:<BR>和<HR>格式:<BR>強制進行換行標記。格式:<HR>插入水平線標記。6.注釋標記格式:<!--注釋內容-->注釋標記。
2.2文本的格式與風格2.2.4建立列表1.有序列表格式:<OLtype="符號類型"><LItype=”符號類型”>…</LI><LItype=”符號類型”>…</LI>
…</OL>功能:建立有序列表。
2.2文本的格式與風格2.無序列表格式:<ULtype=”符號類型”><LItype=”符號類型”>…</LI><LItype=”符號類型”>…</LI>
…</UL>功能:建立無序列表。2.2文本的格式與風格3.自定義列表格式:<DL><DT>…</DT><DD>…</DD><DT>…</DT><DD>…</DD>
…</DL>注意:根據文檔的具體要求,列表可以嵌套使用。在FrontPage2000中實現。2.2文本的格式與風格2.2.5字元的格式化1.字體設置標記格式:<FONT>…</FONT>功能:設置字體格式標記。<FONT>標記提供了幾種屬性:size:設置文字的大小。face:設置字體。color:設置文字的顏色。2.2文本的格式與風格其他標記格式功能<U>…</U>給字元加下劃線<S>…</S>給字元上加橫線,表示刪除<B>…</B>給字元加粗<I>…</I>將字元設置成斜體<BLINK>…</BLINK>標記使得其中的文字產生閃爍的效果2.3加入多媒體與超級鏈接2.3.1加入圖像、視頻、動畫圖像在網頁設計中是必不可少的,所以用戶應掌握在網頁中操作圖像的方法。格式:<IMG>…</IMG>
功能:在網頁中加入圖像、視頻、動畫等。2.3加入多媒體與超級鏈接標記屬性功能src=URL通過URL給出圖像來源的位置,不可缺省width=size設置圖像寬度height=size設置圖像高度alt=txt設置在圖像未載入前圖片位置顯示的文字border=size設置圖像邊框,缺省為0align=alignstyle設置對齊方式。取值為:top,middle,bottom,aleft,righthspace=size設置圖片左右邊沿空白vspace=size設置圖片上下邊沿空白1.插入圖像
2.3加入多媒體與超級鏈接2.插入視頻
標記屬性功能dynsrc=URL設置多媒體來源位置loop=size設置視頻播放的次數loopdelay=time設置兩次播放的間隔時間start=value指定何時開始播放視頻檔使用FrontPage2000在網頁中插入多媒體
2.3加入多媒體與超級鏈接2.3.2加入超級鏈接格式:<A>…</A>標記屬性功能href=URL給定鏈接目標的位置target=frametarget設置顯示鏈接目標的框架accesskey=character設置快捷鍵tabindex=num設置Tab鍵的順序rel=linktype設置到鏈接的關係2.4製作表格
2.4.1建立表格創建表格是規劃頁面最常用的方法。格式:<TABLE>…</TABLE>功能:創建表格進行頁面設計。
在流覽器中顯示時,表格的整體外觀由<TABLE>標記的屬性決定。2.4製作表格標記屬性功能border=size設置表格邊框大小width=size設置表格的寬度height=size設置表格的高度cellspacing=size設置單元格間距cellpadding=size設置單元格的填充距background=URL設置表格背景圖片bgcolor=colorvalue設置表格背景色align=alignstyle設置對齊方式cols=size設置表格的列數2.4製作表格2.4.2定制表格使用<TABLE>只是定義空表格,還需要定義行和單元格。格式:<TR>…</TR>功能:定義表格的一行。對於每一行,可以定義行屬性
2.4製作表格標記屬性功能bgcolor=colorvalue設置行背景顏色。align=alignstyle設置行對齊方式。valign=valignstyle設置單元格垂直對齊方式。行屬性:2.4製作表格單元格屬性:標記屬性功能bgcolor=colorvalue設置單元格背景顏色rowspan=num設置單元格所占的行數colspan=num設置單元格所占的列數align=alignstyle設置對齊方式valign=valignstyle設置單元格垂直對齊方式width=size設置單元格寬度height=size設置單元格高度格式:<CAPTION>…</CAPTION>定義表格說明,通過屬性align設置標題的對齊方式。
2.5製作表單
2.5.1表單的結構
格式:<FORM>…</FORM>定義表單。
標記屬性功能action=URL設置處理表單的程式method=postmethod設置發送表單的HTTP方法enctype=contenttype設置發送表單的內容屬性onsubmit=script設置被發送事件target=frametarget設置顯示表單內容的窗口accept-charset=cdata設置可支持的字元列表2.5製作表單2.5.2FORM中常用的標記
1.輸入域(1)單行輸入域<INPUT>1)text類型
2)password類型
3)radio類型
4)checkbox類型5)submit類型
6)reset類型
7)hidden類型
2.5製作表單(2)多行輸入域標記<TEXTAREA>標記屬性功能name=cdata設置FORM提交的輸入資訊的名稱rows=num設置文本域的行數cols=num設置文本域的列數tabindex=num設置tab鍵的次序2.5製作表單2.按鈕
<BUTTON>標記屬性功能name=cdata設置已發送表單的關鍵字。value=cdata設置已發送表單的值。type=buttontype設置按鈕的類型。tabindex=num設置tab鍵的次序。2.5製作表單3.選擇域格式:
<SELECT><OPTION>選項一
<OPTION>選項二
…</SELECT>功能:定義選擇欄。
2.5製作表單2.5.3表單的處理處理資訊時,經常配合表格標記,使用迴圈輸出的方法。
2.6框架結構
2.6.1框架結構的檔格式<HTML><HEAD>
…</HEAD>注意:在老版本的流覽器<FRAMESET>可能不支持框架結構。
<FRAME>
…<FRAME>
…</FRAMESET></HTML>
2.6框架結構2.6.2框架結構標記的使用格式:<FRAMESET>…</FRAMESET>標記屬性功能rows=size設置多重框架的高度cols=size設置多重框架的寬度onload=script設置框架被載入的事件onunload=script設置框架被卸載的事件2.6框架結構2.6.3FRAME標記
標記屬性功能src=URL設置要鏈接到的HTML檔name=framename表示子窗口的名字marginwidth=size用來控制顯示內容和窗口左右邊界的距離,默認為1marginheight=size用來控制顯示內容和窗口上下邊界的距離,默認為1scrolling=scrollingstyle
指定子窗口是否使用滾動條,有YES/NO/AUTO三個值,默認AUTO,即根據窗口內容決定是否有滾動條noresize使用該屬性後,指定窗口不能調整窗口大小2.6框架結構2.6.4TARGET屬性的使用三種常見的用法:1.用於A標記2.用於BASE標記3.用於FORM標記
2.7CSS基礎
2.7.1CSS樣式簡介CSS(CascadingStyleSheets,層疊樣式表),又稱格式頁。
2.7.2CSS樣式表的定義方法
1.通過HTML標記定義
2.用id屬性定義樣式表
3.使用class定義樣式表
3.1腳本語言概述
3.1.1伺服器端腳本和客戶端腳本目前比較流行的腳本語言有兩種:VBScript和JavaScript。其中VBScript基於Microsoft公司的VisualBasic語言;而JavaScript基於SUN公司的Java語言。使用VBScript和JavaScript,既可以編寫伺服器端腳本,也可以編寫客戶端腳本。
3.1腳本語言概述伺服器端腳本和客戶端腳本的主要區別:伺服器端腳本在Web伺服器上執行,由伺服器根據腳本的執行結果生成相應的HTML頁面併發送到客戶端流覽器中並顯示。客戶端腳本由流覽器進行解釋執行。
3.1腳本語言概述3.1.2VBScript和JavaScriptVBScript和JavaScript都是腳本語言。VBScript是MicrosoftVisualBasic的簡化版本,而JavaScript是基於SUN公司的Java語言。目前可以解釋VBScript腳本的流覽器只有MicrosoftInternetExplorer,而NetscapeNavigater將忽略VBScript腳本。在ActiveSeverPages中的缺省語言是VBScript。本章首頁3.2VBScript腳本語言
3.2.1將單行語句分成多行使用續行符“
-”(由一個空格和一個下劃線組成),將長的語句分成多行書寫。3.2VBScript腳本語言3.2.2在代碼中加注釋注釋語句可以有兩種表現形式,一種是通過使用Rem語句,Rem後的任何文本都會認為是對程式的注釋,不會被處理。另一種是採用西文單引號“′”,即以撇號作為注釋的開始,注釋可以和語句在同一行並寫在語句的後面,也可以單獨占一行。3.2VBScript腳本語言3.2.3使用不同進制的數字在VBScript中,除了可以用默認的十進位來表示數字外,還允許使用十六進制或八進制來表示數字。3.2VBScript腳本語言3.2.4數據類型在VBScript中,只有一種數據類型,即Variant類型,但變數可以根據所賦值的不同而代表不同類型的數據。在Variant類型中包含了多種子數據類型。
3.2VBScript腳本語言3.2.5常量
1.文字常量
(1)字串常量
(2)數值常量
(3)日期時間型常量
2.符號常量
3.2VBScript腳本語言3.2.6變數
1.變數命名約定
2.聲明變數
3.變數的作用域變數的作用域指的是變數的有效範圍,因為變數被聲明後不是在任何地方都可以被使用,每個變數都有它的使用範圍,在作用域內可以使用變數,在作用域外則變數不可見。
3.2VBScript腳本語言3.2.7數組
1.靜態數組
靜態數組可分為一維數組、二維數組或多維數組。數組的維數和大小由數組名之後緊跟的括弧中的數字的個數和數值的大小來決定。靜態數組的大小在運行時不可改變。它是在編譯時開闢記憶體區的。
2.動態數組動態數組是運行時大小可變的數組。當程式沒有運行時,動態數組不占記憶體,在程式運行時才開闢記憶體區。
3.2VBScript腳本語言3.2.8運算1.算術運算2.連接運算3.關係運算4.邏輯運算5.運算符的優先順序3.2VBScript腳本語言3.2.9控制結構
1.選擇結構(1)單行結構(2)塊結構2.多分支結構3.迴圈結構(1)For迴圈(2)Do迴圈(3)While迴圈3.2VBScript腳本語言3.2.10過程1.Sub過程2.函數本章首頁3.3VBScript常用函數
3.3.1MsgBox函數
函數的一般格式如下所示:MsgBox(prompt[,buttons][,title][,helpfile,context])3.3VBScript常用函數3.3.2InputBox函數
函數的一般格式如下所示:InputBox(prompt[,title][,default][,xpos][,ypos][,helpfile,context])3.3VBScript常用函數3.3.3數學函數
求平方根函數(Sqr)求絕對值函數(Abs)指數函數(Exp)對數函數(Log)符號函數(Sgn)三角函數3.3VBScript常用函數3.3.4字串函數空格函數
Space(n)刪除空白字元函數
Trim(字串)字串長度測試函數
Len(字串|變數名)字串截取函數字母大小寫轉換函數字母串匹配函數
3.3VBScript常用函數3.3.5日期和時間函數日期函數,包括:Year(Now):返回當前系統的年份Month(Now):返回當前系統的月份Day(Now):返回當前系統的日期WeekDay(Now[,n]):返回當前系統的星期時間函數,包括:Hour(Now):返回當前系統的小時(0-23)Minute(Now):返回當前系統的分鐘(0-59)Second(Now):返回當前系統的秒(0-59)
3.3VBScript常用函數3.3.6數據類型轉換函數CStr函數CInt函數CDate函數CBool函數CLng函數CSng函數CDbl函數3.3VBScript常用函數3.3.7數據類型判別函數IsNull函數IsEmpty函數IsNumeric函數IsArray函數IsArray(arrStudent)=TrueIsDate函數IsObject函數本章首頁4.1ASP內置對象ASP提供了6個內置對象,這些對象在使用時並不需要經過任何聲明或建立的過程。注意:上述的6個ASP內置對象都是在伺服器端運行的,應該放在伺服器腳本中。4.2HTTP協議簡介HTTP(HypertextTransferProtocol,超文本傳輸協議)限制了在網路中傳輸資訊的內容以及客戶端流覽器與伺服器端交互的方式。HTTP協議也稱做請求回應協議。典型的流覽器請求包括:請求行、頭域和資訊體。如下所示:GET/default.htmHTTP/1.1Host:網站在接收到請求後就會發送一個回應,每個回應都有一個狀態行,包括狀態代碼和資訊體。4.3Response對象
Response對象用於動態回應客戶端請求(Request),並將動態生成的回應結果返回到客戶端流覽器中。
Response的使用語法為:Response.collection|property|method4.3Response對象4.3.1Response對象的屬性屬
性功
能
說
明Buffer表明頁輸出是否被緩衝CacheControl決定代理伺服器是否能緩存ASP生成的輸出Charset將字元集的名稱添加到內容類型標題中ContentType指定回應的HTTP內容類型Expires在流覽器中緩存的頁面超時前,指定緩存的時間ExpiresAbsolute指定流覽器上緩存頁面超時的日期和時間IsClientConnected表明客戶端是否與伺服器斷開Pics將PICS標記的值添加到回應的標題的PICS標記字段中Status伺服器返回的狀態行的值4.3Response對象4.3Response對象4.3.2Response對象的方法方
法功
能
說
明AddHeader從名稱到值設置HTML標題AppendToLog在該請求的Web伺服器日誌條目後添加字串BinaryWrite將給出資訊寫入到當前HTTP輸出中,並且不進行任何字元集轉換Clear清除任何緩衝的HTML輸出End停止處理.asp檔並返回當前的結果Flush立即發送緩衝的輸出Redirect將重指示的資訊發送到流覽器,嘗試連接另一個URLWrite將變數作為字串寫入當前的HTTP輸出4.3Response對象1.Write方法:可以向流覽器輸出動態資訊。
Response.Write任何數據類型
2.Redirect方法將客戶端的流覽器重定向到一個新的網頁。Response.RedirectURL3.End方法使Web伺服器停止處理腳本並返回當前結果,檔中剩餘的內容將不被處理。如果Response.Buffer已設置為TRUE,則調用Response.End將緩衝輸出。Response.End4.3Response對象4.Flush方法
Response.Flush方法可以立即發送緩衝區中的數據。Response.Flush5.Clear方法刪除緩衝區中的所有HTML輸出。Response.Clear6.BinaryWrite方法不經任何字元轉換就將指定的資訊寫到HTTP輸出。Response.BinaryWrite二進位數據
4.3Response對象7.AppendToLog方法
Response.AppendToLog“字串”
8.AddHeader方法
Response.AddHeaderName,Value4.3Response對象4.3.2Response對象數據集合
Response對象只有Cookies一個數據集合
4.4Request對象
利用Request對象可以在伺服器端獲得用戶端的資訊。Request對象的語法描述如下:Request[.collection|property|method](variable)collection表示Request對象的集合property表示Request對象的屬性method表示Request對象的方法collection、property和method三個參數只能選擇一個,也可以三個都不選。變數參數(variable)是一些字串,這些字串指定要從集合中檢索的專案,或作為方法或屬性的輸入。
4.4Request對象4.4.1Request對象的屬性
TotalBytes屬性是一個只讀的屬性,表示從客戶端所接收數據的位元組的長度,其語法如下:位元組長度=Request.TotalBytes4.4.2Request對象的方法
BinaryRead方法以二進位方式來讀取客戶端使用POST傳送方法所傳遞的數據。其語法如下:Variant數組=Request.BinaryRead(Count)4.4Request對象4.4.3Request對象的數據集合內容值=Request[.collection]("變數名稱")集合功能說明ClientCertificate存儲在發送到HTTP請求中客戶端證書中的字段值CookiesHTTP請求中被發送的cookies的值FormHTTP請求正文中表格元素的值QueryStringHTTP中查詢字串中變數的值ServerVariables預定的環境變數的值4.4Request對象1.Form數據集合
Form數據集合可以取得客戶端表單上的對象內容值。
表單對象內容=Request.Form("表單對象名稱")或表單對象內容=Request.Form(“索引值”)
2.QueryString數據集合
QueryString數據集合是通過取得HTTP的附加參數來傳遞,附加參數通常是使用“?”來連接的。其格式為:URL地址?Query字段在傳遞多個Query字段時,用“&”符號分隔符號。
4.4Request對象參數內容=Request.QueryString("參數名稱")或參數內容=Request.QueryString(索引值)3.Cookies數據集合
4.ServerVariables數據集合
負責取得Web伺服器端的環境變數(ServerEnvironmentVariable),檢索預定的環境變數。5.ClientCertificate數據集合
從Web流覽器發佈請求中獲取驗證字段(由X.509標準指定)。
5.1Session概述Session的中文是“會話”的意思,在ASP中Session代表了伺服器與客戶端之間的“會話”。利用Session可以存儲流覽者的一些特定資訊,例如:流覽者的姓名、性別、所用流覽器的類型以及訪問停留時間等。Session對個人資訊的安全性構成了一定的威脅。5.2Session的使用5.2.1Session變數的創建與使用
利用Session實現用戶註冊。5.2.2Session對象的屬性TimeOut屬性。SessionID屬性。CodePage屬性。LCID屬性。5.2Session的使用5.2.3Session對象的方法
利用Abandon方法刪除對象數據並釋放資源。5.2.4Session對象的數據集合
Contents數據集合。StaticObject數據集合。5.2.5Session對象的事件Session_OnEnd事件Session_OnStart事件5.3Cookie的使用5.3.1Cookie概述
Cookie實際上是一個字串或一個標誌,當一個包含Cookie的頁面被用戶流覽器讀取時,一個Cookie就被存入到本地硬碟中,當需要時該網站可以從用戶的本地硬碟中讀取這些Cookie。由於Cookie能夠讀、寫用戶本地硬碟中的數據,於是對本地電腦的安全構成威脅。但從目前的使用看,Cookie只能向用戶本地硬碟的固定目錄寫入文本檔,而不是可執行檔,所以對電腦不會構成危害。5.3Cookie的使用5.3.2創建Cookie名
稱說
明Domain只允許寫。用來指定Cookie將發送到哪個域的請求中去。如果不指定,就默認為創建Cookie是所在的域Expires只允許寫。用來指定Cookie的過期日期。為了在會話結束後將Cookie存儲在客戶端磁片上,必須設置該日期,因為該屬性的默認值是一旦會話結束,就刪除所創建的Cookie。另外,若此項屬性的設置未超過當前日期,則在任務結束後Cookie將到期HasKeys只允許讀。用來指定Cookie是否包含關鍵字,它的值是布爾值,如果只允許Cookie有關鍵字(即Cookie含有key參數,是一個Cookie字典),則HasKeys的值是False;否則是TruePath只允許寫。若被指定,則cookie將只發送到對該路徑的請求中。如果未設置該屬性,則使用應用程式的路徑Secure只允許寫。用來指定cookie是否安全,它的取值是布爾值。如果指定Cookie是安全的,就給它賦值True;否則,就給它賦值False6.1Application對象概述Application對象是一個應用程式級的對象,它包含的數據可以在整個Web站點中被所有用戶使用,並且可以在網站運行期間持久地保存數據。Application與Session對象之間的區別。1.應用範圍不同。2.存活時間不同。6.2Application對象的使用6.2.1創建和使用Application變數Application(“變數名”)=“變數值”
6.2.2Application對象的方法Lock方法。Unlock方法。6.2.3Application對象的事件Application_OnStart事件。Application_OnEnd事件。6.2Application對象的使用6.2.4Application對象的集合
Contents數據集合。StaticObjects數據集合。
6.3網上聊天室設計6.3.1用戶登記利用Session實現用戶登記。6.3.2進入聊天室結合Session和Application的功能實現聊天室的進入。6.3.3發言程式設計結合Session和Application的功能實現發言程式設計。7.1Server對象Server對象提供對伺服器上的方法和屬性的訪問,其中大多數方法和屬性是為實用程式提供服務的。語法如下:Sperty|method7.1.1Server對象的屬性ScriptTimeout用於設置一個ASP腳本所允許的最長執行時間。語法如下:Server.ScriptTimeout=NumSeconds7.1Server對象7.1.2Server對象方法1.CreateObject方法允許建立一個ActiveXServer組件實例。Set對象實例名稱=Server.CreateObject(“ActiveX組件”)2.MapPath方法將指定的虛擬路徑轉換為伺服器上相應的物理路徑,真實的路徑
=Server.MapPath("String")7.1Server對象3.HTMLEncode方法HTMLEncode方法是對指定的字串應用HTML編碼。Server.HTMLEncode(string)4.URLEncode方法URLEncode方法將指定的字串進行URL編碼Server.URLEncode(string)
8.1ASP組件概述
ASP組件與ASP對象十分相似,利用它們都可以使ASP完成某些特定的功能,它們的區別在於:一個組件可能包含不只一個對象;而且在使用組件之前,要明顯地創建一個實例。調用內置組件有兩個步驟:首先,必須創建組件的一個實例,並將該實例賦予一個變數。創建組件實例的方法是使用ASP的Server對象的CreateObject方法,該方法只有一個參數,即組件的註冊名,用set命令賦予變數。然後,調用組件的方法和屬性,完成相應的功能。
8.2AdRotator組件
使用AdRotator組件,可以很容易地在Web頁面上插入一個迴圈播放廣告橫幅的播放器。AdRotator的語法如下:SetAdRotator變數=Server.CreateObject("MSWC.AdRotator")AdRotator變數.屬性=屬性值或AdRotator變數.方法(迴圈定時檔路徑)
8.2AdRotator組件8.2.1AdRotator組件的屬性和方法1.AdRotator組件的屬性
Border屬性
Clickable屬性
TargetFrames屬性
8.2AdRotator組件2.AdRotator組件的方法只有GetAdvertisement一個方法;主要功能在於重新取得一個將要顯示的圖片和超文本鏈接。語法格式如下所示:GetAdvertisement(rotationSchedulePath)其中rotationSchedulePath指定RotatorSchedule檔相對於虛擬目錄的位置,例如:MyAd.GetAdvertisement("myadrot.txt")8.2AdRotator組件8.2.2AdRotator組件相關檔1.迴圈定時檔,格式如下:
[REDIRECTURL][WIDTHnumWidth][HEIGHTnumHeight][BORDERnumBorder]*adURLadHomePageURLTextimpressions8.2AdRotator組件2.重定向檔
重定向檔是AdRotator組件中可選擇項,如果在迴圈定時檔中指定使用重定向檔,每當用戶點擊廣告時,其發出的請求對象會重定向到該檔。重定向檔是使用Request.querystring("URL")來取得與被點擊圖像相關的“URL”。
8.3BrowserCapabilities組件
用來瞭解客戶端所用的流覽器類型以及版本。工作原理:當客戶的流覽器連接到伺服器時,會自動向伺服器發送一個用戶代理(UserAgent)的HTTP標頭(header),可以使用如下代碼獲得這段header:<%=Request.ServerVariables("HTTP_USER_AGENT")%>
組件能夠取得用戶代理的HTTP頭字串,並將該字串與Browscap.ini檔中的內容進行比較。8.3BrowserCapabilities組件8.3.1Browscap.ini檔
該檔的語法如下:
[;comments][HTTPUserAgentHeader][parent=browserDefinition][property1=value1]...[propertyN=valueN][DefaultBrowserCapabilitySettings][defaultProperty1=defaultValue1]...[defaultPropertyN=defaultValueN]8.3BrowserCapabilities組件流覽器屬性:ActiveXControls屬性,backgroundsounds屬性,Beta屬性,Browser屬性,Cdf屬性,cookies屬性,Frames屬性,Javaapplets屬性,javascript屬性,platform屬性,Tables屬性,vbscript屬性,Version屬性。8.3.2BrowserCapabilities組件的使用
8.4ContentLinking組件目的在於管理網頁或網址間的超文本鏈接。創建一個管理URL列表的Nextlink對象,其語法如下:SetNextLink=Server.CreateObject("MSWC.NextLink")8.4ContentLinking組件8.4.1線性排列順序檔
包含Web頁的相關資訊列表,該檔必須在
Web伺服器的虛擬路徑上可用。在該檔中每行指定了鏈接的URL和描述資訊,語法如下:WebURL[text-description[comment]]注意:線上性排列順序檔中每行以回車換行結束,行中的每一列必須以跳位字元(TAB)來分隔。
8.4ContentLinking組件8.4.2ContentLinking組件方法GetListCount(listURL)GetNextURL(listURL)GetPreviousDescription(listURL)GetListIndex(listURL)GetNthDescription(listURL,i)GetPreviousURL(listURL)GetNextDescription(listURL)GetNthURL(listURL,i)8.5計數器組件
計數器組件的創建語法如下:SetMyCount=Server.CreateObject("MSWC.Counters")8.5.1計數器組件的方法
Get(CounterNumber)Increment(CounterNumber)Remove(CounterNumber)Set(CounterNumber,integer)8.5計數器組件8.5.2計數器組件的使用
在Global.asa檔中聲明,如下所示:<OBJECTRUNAT=ServerSCOPE=ApplicationID=MyCountPROGID="MSWC.Counters"></OBJECT>在整個Web站點內都可以訪問該組件,利用該組件的相關方法可以完成具體的統計工作。
8.6CDONTS組件
CDONTS組件是IIS4.0或IIS5.0中提供的一種發送E-mail的組件,其實例的創建也要使用Server對象的CreateObject方法,語法如下:SetmyMail=Server.CreateObject("CDONTS.NewMail")8.6.1CDONTS組件的屬性和方法
8.6CDONTS組件屬性主要有五種:
屬
性說
明To設置收件人的郵件地址Ac、Bcc設置一個或多個參閱的郵件地址,是用於設置抄送人與密件抄送人的郵件地址From設置發件人的郵件地址Subject設置郵件主題Body設置郵件內容8.6CDONTS組件方法主要有兩種:
屬
性說
明Send發送郵件AttachFile設置附加檔8.6CDONTS組件8.6.2CDONTS組件的使用
在使用該組件前,應該保證在電腦中有CDONTS.DLL檔(該檔一般存放在Winnt\System32目錄下)。
首先使用DOS下的“regsvr32”命令註冊該組件。註冊該組件語法為:regsvr32[physicalpath]cdonts.dll注意:應該指定cdonts.dll檔所在的物理路徑。註銷該組件的語法為:regsvr32/u[physicalpath]cdonts.dll9.1檔操作組件介紹對象名稱功能FileSystemObject對象包含了處理檔系統的所有基本方法TextStream對象用來讀寫文本檔File對象用來處理單個檔Folder對象用來處理檔夾Drives對象用來取得系統中所有可用驅動器的資訊9.2檔及檔夾處理語法描述Object.BuildPath(path,name)在由path指定的目錄後面加上由name指定的檔或檔夾Object.CopyFileSource,Dest[]將一個或多個檔從某位置複製到另一位置,在原始檔案Source中可以使用通配符。參數overwrite表示當目標檔存在時是否覆蓋。有兩個取值:True或FalseObject.CopyFolderSource,Dest[,overwrite]將一個檔夾從某位置複製到另一位置。參數overwrite表示當目標檔存在時是否覆蓋。有兩個取值:True或False9.2檔及檔夾處理Object.CreateFolder(foldername)創建一個名為foldername的檔夾。如果以該名字命名的檔夾已經存在,則會產生一個錯誤Object.CreateTextFile(filename[,overwrite[,Unicode]])創建一個名為filename的檔並返回
TextStream對象,參數overwrite是可選的,表明當已存在一個同名檔時,是否將其覆蓋。有兩個取值:True或False。參數Unicode是可選的,默認為FALSE,指示該檔是否用ASCII碼形式進行創建和保存。如果選擇TRUE,將以Unicode方式創建。9.2檔及檔夾處理Object.DeleteFilefilespec[,force]刪除一個指定的檔,參數force設置只讀檔是否可被刪除,有兩個取值:True或FalseObject.DeleteFolderfolderspec[,force]刪除一個指定的檔夾和其中的內容,參數force的含義同上Object.DriveExists(drivespec)如果指定的驅動器存在,則返回
True;否則返回
FalseObject.FileExists(filespec)如果指定的檔存在返回
True;否則返回
FalseObject.FolderExists(folderspec)如果指定的檔夾存在,則返回
True;否則返回
False9.2檔及檔夾處理Object.GetAbsolutePathName(pathspec)從pathspec指定的路徑中返回相對應的絕對路徑名Object.GetBaseName(path)返回一個字串,該字串包含路徑最後一個組成部分的名字Object.GetDrivedrivespec返回與指定的路徑中驅動器相對應的
Drive對象Object.GetDriveName(path)返回一個包含指定路徑中驅動器名的字串9.2檔及檔夾處理Object.GetExtensionName(path)返回一個字串,該字串包含路徑最後一個組成部分的擴展名Object.GetFile(filespec)返回一個與指定路徑中某檔相應的
File對象Object.GetFileName(pathspec)返回指定路徑(不是指定驅動器路徑部分)的最後一個組成部分Object.GetFolder(folderspec)返回一個與指定的路徑中某檔夾相應的Folder對象9.2檔及檔夾處理Object.GetParentFolderName(path)返回一個字串,該字串包含指定的路徑中最後一個組成部分的父檔夾Object.GetSpecialFolder(folderspec)返回一個指定的特殊檔夾Object.GetTempName返回隨機生成的臨時檔或檔夾的名稱,用於執行要求臨時檔或檔夾的操作Object.MoveFilesource,Dest將一個或多個檔從某位置移動到另一位置,在原始檔案Source中可以使用通配符9.2檔及檔夾處理Object.MoveFoldersource,Dest將一個或多個檔夾從某位置移動到另一位置,在原始檔案Source中可以使用通配符Object.OpenTextFile(filename[,iomode[,create[,format]]])打開指定的檔並返回一個TextStream對象,可以讀取此對象或將其追加到檔。參數iomode的值為1時,表示檔以只讀方式打開,iomode的值為8時,表示檔以追加方式打開;參數create為True時,檔以創建方式打開;參數format指定檔的格式:-2,-1,0分別對應系統默認、unicode和ASCII9.3文本檔的讀寫操作9.3.1TextStream對象1.TextStream對象屬性
屬
性
名語
法描
述AtEndOfLineobject.AtEndOfLine只讀屬性。在TextStream檔中,如果檔指針指向行末標記,就返回True;否則返回
FalseAtEndOfStreamobject.AtEndOfStream只讀屬性,如果檔指針位於TextStream檔末,則返回True;否則返回False9.3文本檔的讀寫操作Columnobject.Column只讀屬性,返回TextStream檔中當前字元位置的列號Lineobject.Line只讀屬性,返回TextStream檔中的當前行號9.3文本檔的讀寫操作9.3.1TextStream對象2.TextStream對象方法
方法名語
法描
述Closeobject.Close關閉打開的TextStream檔
Readobject.Read(characters)從TextStream檔中讀入指定數目的字元並返回結果字串9.3文本檔的讀寫操作ReadAllobject.ReadAll讀入全部TextStream檔並返回結果字串ReadLineobject.ReadLine從TextStream檔中讀入一整行字元(直到下一行,但不包括下一行字元),並返回結果字串Skipobject.Skip(characters)讀取TextStream檔時跳過指定數目的字元SkipLineobject.SkipLine當讀到TextStream檔時,跳過下一行9.3文本檔的讀寫操作Writeobject.Write(string)向
TextStream檔寫入指定字串WriteLineobject.WriteLine([string])向TextStream檔寫入指定字串和新行字元WriteBlankLinesobject.WriteBlankLines(lines)在TextStream檔中寫入指定數目的新行字元10.1概述要開發基於流覽器/伺服器模式的應用,首先要解決網頁與資料庫的連接。資料庫一般按照數據的組織和查詢方式加以區分。目前使用最多的是基於關係代數的關係資料庫管理系統(RDBMS)。數據按照表存放,一個資料庫可以有多個數據表,每個表由行和列組成。表的數據可以通過行和列查詢,使用的語言為結構化查詢語言SQL(StructuredQueryLanguage),SQL是資料庫語言的標準。
10.1概述10.1.2Web資料庫簡介
實現網頁與資料庫的連接和集成,一般有下麵三種方法:1.CGI的方法;2.Web通過處理器與資料庫進行連接;3.採用集成了ODBC介面功能的Web伺服器。10.1概述10.1.3ASP訪問資料庫方法通過ADO(ActiveXDataObjects)層或ODBC(OpenDatabaseConnectivity,開放式資料庫連接)介面來訪問資料庫的。ODBC是連接資料庫的通用驅動程式,Microsoft正逐步用OLEDB代替ODBC。
ADO是在Microsoft的新的資料庫應用開發介面(API)-OLEDB技術上實現的。
10.2ODBC的安裝設置
10.2.1ODBC概述ODBC(OpenDatabaseConnectivity,開放式資料庫連接)是資料庫伺服器的一個標準協議,它向訪問網路資料庫的應用程式提供了一種通用的語言。ODBC數據源是整個ODBC設計的一個重要組成部分。
ODBC數據源分為兩種:機器數據源:只能被該電腦訪問。
檔數據源:尾碼名為.dsn的檔,如果檔放在網路共用的驅動器中,就可以被所有安裝了相同驅動程式的用戶共用。10.2ODBC的安裝設置10.2.2創建數據源
1.打開系統的控制面板,雙擊“ODBC數據源
(32位)”的圖示,出現“ODBC數據源管理器”的窗口,選擇“系統DSN”選項卡。2.單擊“添加”按鈕,出現“創建數據源”窗口。3.為該數據源指定適當的驅動程式。4.現在已經完成一個ODBC的DSN的配置,點擊“高級”,出現“設置高級選項”窗口,在其中可以設置用戶名和密碼。10.3SQL語言基礎
10.3.1SQL簡介SQL是運算元據庫的標準語言,它有兩大特點:
1.所有數據存儲在表中。
2.表中的記錄沒有順序,也就是說在使用SQL語言時只能按查詢條件來讀取記錄。注意:在使用SQL語言進行數據查詢時,最重要的是構造合適的查詢條件,而非精妙的演算法。
10.3SQL語言基礎10.3.2查詢表中的數據資訊
1.單表查詢:Select<列名>From表名
列名為操作字段,可以為多個,各字段間使用“,”隔開。記錄的操作:1)篩選。
查詢條件運
算
符說
明比較=,>,<,>=,<=,<>,字串比較從左向右進行確定範圍BETWEENAND,NOTBETWEENANDBETWEEN後是下限,AND後是上限確定集合IN,NOTIN檢查一個屬性值是否屬於集合中的值字元匹配LIKE,NOTLIKE用於構造條件運算式中的字元匹配邏輯運算AND,OR,NOT用於構造複合運算式10.3SQL語言基礎2)排序。語法如下:Select<列名>From表名
Where條件
OrderBy<列1>,<列1>…[ASC|DESC]3)查詢互不相同的記錄。
4)集合函數。
l
COUNT():統計記錄個數l
AVG():計算某個數值型字段值的總和l
SUM():計算某個數值型字段值的平均值l
MAX():計算某個數值型字段值的最大值
MIN():計算某個數值型字段值的最小值
10.3SQL語言基礎2.多表查詢10.3.3編輯資料庫中的數據
1.添加記錄
語法如下:
InsertInto表名(<列1,列2…>)VALUES(<值1,值2…>)或
InsertInto表1名(<列1,列2…>)Select<列1,列2…>From表2名Where條件
10.3SQL語言基礎使用Insert語句向數據表中添加記錄時,僅指定部分的字段,其他沒有指定的字段按下麵情況處理:(1)如果該字段是一個標識字段,那麼它會自動產生一個新值。當用戶向一個有標識字段的表中添加新記錄時,只要忽略該字段,標識字段會自動為自己賦一個新值。(2)如果該字段有默認值,就使用默認值。(3)如果該字段被設置成可以接受空值,而且沒有默認值,該字段為空值。(4)如果該字段不能接受空值,而且沒有默認值,就會出現錯誤。
11.1ADO概述ASP提供了強大的資料庫支持,ASP對數據庫的訪問可以通過ADOADO(ActiveXDataObjects,ActiveX數據對象)模式來實現。11.1.1ADO的七個對象
ADO對象主要包含Connection對象、Command對象、Parameter對象、RecordSet對象、Field對象、Property對象和Error對象等七個對象。11.1.2ADO的四個數據集合ADO對象包含Fields數據集合、Properties數據集合、Parameters數據集合和Error數據集合等四個數據集合。11.1ADO概述11.1.3ADO對象與數據集合之間的關係11.2Connection對象
Connection對象負責與資料庫實際的連接動作,代表與數據源進行的惟一會話。SetConn=Server.CreateObject("ADODB.Connection")11.2Connection對象11.2.1Connection對象的方法1.Open方法負責創建與數據源的連接,語法如下:connection.OpenConnectionString,UserID,Password其中ConnectionString包含用於建立連接數據源的資訊。UserID包含建立連接時所使用用戶名。Password包含建立連接時所使用密碼。注意:如果在ConnectionString參數中包括了用戶名和密碼資訊,而同時UserID及Password參數也存在,那麼UserID和Password參數將覆蓋ConnectionString中指定相應的資訊。
11.2Connection對象在創建連接時,由於資料庫的不同,Connection參數的設置也有所不同:對於在“ODBC數據源控制面板”中設置過的數據源,該參數設置比較簡單,可以使用“DSN=數據源名稱”的格式。對於沒有在“ODBC數據源控制面板”中設置過的,則可以採用指定ODBC驅動程式設置,在Windows系統目錄下的Odbc.ini檔中,可以找到相關的資訊。11.2Connection對象2.Execute方法執行指定的查詢、SQL語句、存儲過程或特定提供者的文本等內容,語法如下:
對於沒有返回結果的命令格式:connection.ExecuteCommandText,RecordsAffected,Options對於有返回結果的命令格式:SetrecordSet=connection.Execute(CommandText,RecordsAffected,Options)該方法返回一個RecordSet對象。11.2Connection對象CommandText是字串類型,包含要執行的SQL語句、表名、存儲過程或特定提供者的文本;RecordsAffected是長整型變數類型,其值是執行指定的操作所影響的記錄數目;Options參數表示對數據庫請求的類型。3.Close方法關閉Connection對象或RecordSet對象以便釋放所有關聯的系統資源。Connection.close4.BeginTrans、CommitTrans和RollbackTrans方法11.2Connection對象11.2.2Connection對象的屬性1.CommandTimeout屬性與ConnectionTimeout屬性2.ConnectionString屬性3.Provider屬性4.Mode屬性5.其他屬性DefaultDatabase屬性Attributes屬性CursorLocation屬性IsolationLevel屬性State屬性Version屬性11.2Connection對象11.2.3Connection對象的數據集合
Connection對象提供Errors、Properties兩種數據集合。
11.3Command對象
11.3.1Command對象的屬性
1.ActiveConnection屬性
2.CommandText屬性
3.CommandType屬性
常
量說
明AdCmdText指定CommandText的類型為SQL命令AdCmdTable指定CommandText的類型為數據庫表的名稱AdCmdStoredProc指定CommandText的類型為存儲過程名稱AdCmdUnknown默認值。CommandText屬性中的命令類型未知11.3Command對象4.CommandTimeout屬性
5.State屬性
6.Prepared屬性
11.3Command對象11.3.2Command對象的方法
1.CreateParamete方法創建新的Parameter對象。Setparameter=command.CreateParameter(Name,Type,Direction,Size,Value)Name代表Parameter對象名稱。Type用於指定Parameter對象數據類型。Direction指示Parameter所標明的是輸入參數、輸出參數還是既是輸出又是輸入參數,或該參數是否為存儲過程返回的值Size用於指定參數值最大長度(以字元或位元組數為單位)Value是變體型,用於指定
Parameter對象的值。
11.3Command對象2.Execute方法負責運行指定的SQL命令或存儲過程。語法如下:有返回結果的語法:SetrecordSet=command.Execute(RecordsAffected,Parameters,Options)沒有返回的的語法:command.ExecuteRecordsAffected,Parameters,Options11.4RecordSet對象
11.4.1RecordSet對象的方法
1.Open方法打開代表基本表、查詢結果或者以前保存的RecordSet中記錄的游標(指向資料庫數據的位置,即指針),也就是說可以與資料庫建立連接。recordSet.OpenSource,ActiveConnection,CursorType,LockType,Options2.Close方法用來關閉所指定的RecordSet對象。RecordSet.Close11.4RecordSet對象3.MoveFirst、MoveLast、MoveNext、MovePrevious、Move方法RecordSet.MoveFirstRecordSet.MoveLastRecordSet.MoveNextRecordSet.MovePreviousRecordSet.
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论