ASP内置对象课件_第1页
ASP内置对象课件_第2页
ASP内置对象课件_第3页
ASP内置对象课件_第4页
ASP内置对象课件_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

ASP內置對象

4.1ASP內置對象簡介

ASP提供的對象以及組件都可以用來實現和擴展ASP應用程式的功能。每個對象都有其各自的屬性、集合和方法,並且可以回應有關事件。用戶不必瞭解對象內部複雜的數據傳遞與執行機制,而只需在程式中設置或調用某個對象特定的屬性、集合或方法,即可實現該對象所提供的特定功能。

名描

述Response用來傳輸數據到客戶端流覽器Request用來讀取客戶端流覽器的數據Server用來提供某些Web伺服器端的屬性與方法Application用來存儲當前應用程式所有使用者共用的數據Session用來存儲當前應用程式單個使用者專用的數據ObjectContext用來提交或中止由

ASP腳本啟動的事務ASPError用來捕捉

ASP運行錯誤並向用戶返回詳細的資訊描述ASP的內置對象及其功能說明:4.2Response對象

4.2.1Response對象概述

Response對象的作用是向流覽器輸出文本、數據和cookies,並可重定向網頁,或用來控制向流覽器傳送網頁的動作。

性描

述Buffer標明輸出內容是否被緩衝CacheControl設置代理伺服器是否將輸出內容放進緩衝區CharSet將字元集的名稱附加到內容類型(Content-Type)標頭ContentType設置伺服器輸出的HTTP內容類型Expires設置放進流覽器緩衝區的網頁逾期時間的長短(以分為單位)1.Response對象的屬性2.Response對象的方法

法描

述Write輸出數據到客戶端流覽器Redirect重新定向流覽器的URL地址End結束向流覽器的數據輸出Clear清除輸出緩衝器中的數據Flush將緩衝器中已有的數據輸出4.2.2Response.Write方法

Response.Write方法是Response對象最常用的方法,用來向流覽器動態輸出數據。示例1:

<html><bodybgcolor="#DDFFFF"><h2><%Response.Write"歡迎訪問我們的網站!"%></h2><h3>今天是:<%Response.WriteDate%></h3></body></html>

圖4-1Response.Write方法使用舉例

示例2:

<html><bodybgcolor="#DDFFFF"><h2><%="歡迎訪問我們的網站!"%></h2><h3>今天是:<%=Date%></h3></body></html>4.2.3Response.Redirect方法Response.Redirect方法可用來將客戶端的流覽器重新定向到一個新的網頁。格式:response.redirectURL4.2.4Response對象的其他方法

1.Response.End方法2.Response.Clear方法3.Response.AppendToLog方法4.Response.Flush方法4.2.5Response對象的屬性

1.Response.Buffer屬性2.Response.CacheControl屬性3.Response.IsClientConnected屬性4.Response.Expires屬性:4.2.6Response.Cookies集合Cookies是在HTTP協議下通過Web伺服器存儲在客戶端硬碟上的一個小型的文本檔。是伺服器或腳本程式用來保留客戶端資訊的一種方法。在Cookies中包含了客戶的有關資訊,如身份識別號碼、密碼、客戶在Web站點上的操作以及客戶訪問該站點的次數等。當客戶第一次連接到某個Web站點時,Web伺服器可以利用Response對象的Cookies集合將有關資訊寫入到客戶端磁片的Cookies檔中,而當這個客戶再次連接到該Web站點時,便可以利用Request對象的Cookies集合來取得這個保存在客戶端Cookies中的資訊。設置Cookies的語法格式:Response.Cookies(cookiename)[(key)|.attribute]=value4.3Request對象Request對象用來讀取客戶端的表單資訊或其他傳送到伺服器端的資訊,並可在此基礎上實現將客戶數據存入Web資料庫或對其作進一步的處理。Request對象的屬性、方法和集合如下表所示。名

稱描

述TotalBytes屬性返回客戶端在請求文本中發送的位元組總數BinaryRead方法以二進位方式讀取客戶端流覽器所傳送的數據Form集合包含客戶端流覽器以POST方式遞交的各項數據QueryString集合包含客戶端流覽器以GET方式遞交的各項數據ClientCertificate集合包含客戶端流覽器返回的各項認證值Cookies集合包含客戶端流覽器返回的Cookies中的各項數據4.3.1Request對象的屬性與方法

1.Request.TotalBytes屬性

Request對象只有一個Request.TotalBytes屬性,表示從客戶端所接受數據的位元組數。2.Request.BinaryRead方法

Request對象只有一個Request.BinaryRead方法。是以二進位方式讀取客戶端流覽器採用POST方式所傳送來的數據,並將所取得的數據保存在指定的數組中。4.3.2Request.Form集合

利用Request對象的Form集合可以取得客戶端流覽器以POST方式遞交的表單中的各項數據,其語法格式為:Request.Form(element)[(index)|.Count]

1.表單創建示例

<html><head><title>輸入客戶資料</title></head><body><formmethod="POST"action="form1.asp"name="form1"><p><fontsize="3"><b>請在此輸入客戶資料:</b></font></p><p>您的姓名:<inputtype="text"name="name"size="16"></p><p>您的年齡:<selectsize="1"name="age"><optionselected>20歲以下</option><option>20歲至30歲</option><option>30歲至40歲</option><option>40歲至50歲</option><option>50歲以上</option></select></p><p>聯繫電話:<inputtype="text"name="phone"size="25"><p><p><inputtype="submit"value="確認提交"name="B1"> <inputtype="reset"value="全部重填"name="B2"></p></form></body></html>

2.接受與處理表單數據示例

<%Dimname,age,phonename=Request.Form("name")age=Request.Form("age")phone=Request.Form("phone")Ifname=EmptyOrphone=EmptyThenResponse.Write"您的個人資訊沒填寫完畢,請返回重新填寫!"

Response.EndEndIfResponse.Write"<P><B>"&"您提交的資訊如下:"&"</B></P>"Response.Write"您的姓名是:"&name&"<br>"Response.Write"您的年齡是:"&age&"<br>"Response.Write"您的聯繫電話是:"&phone&"<br>"%>4.3.3Request.QueryString集合

Request對象的QueryString集合同樣可以包含傳送到

Web伺服器的各個表單值,這些值在URL請求中表現為若干項用問號連接起來的一串文本。其語法格式為:Request.QueryString(variable)[(index)|.Count]

1.表單創建示例<html><head><title>輸入客戶資料</title></head><body><formmethod="GET"action="form2.asp"name="form2"><p><fontsize="3"><b>請在此輸入客戶資料:</b></font></p><p>您的姓名:<inputtype="text"name="name"size="16"></p><p>您的年齡:<inputtype="text"name="age"size="8"></p><p>聯繫電話:<inputtype="text"name="phone"size="25"></p><inputtype="hidden"name="UserStatus"Value="New"><p></p><p><inputtype="submit"value="提交"name="B1"> <inputtype="reset"value="重填"name="B2"></p></form></body></html>2.接受與處理表單數據示例

<%Dimname,age,phonename=Request.QueryString("name")age=Request.QueryString("age")phone=Request.QueryString("phone")Response.Writename&":您好!"&"<br>"Response.Write"您今年"&age&"歲"&"<br>"Response.Write"您的聯繫電話是:"&phone&"<br>"IfRequest.QueryString("UserStatus")="New"ThenResponse.Write"這是您第一次訪問本網站!"Endif%>4.3.4Request.ServerVariables集合Request對象的ServerVariables集合中包含了系統的各種環境變數資訊,以及隨HTTP請求和回應一起傳遞的HTTPHeaders資訊。通過訪問該集合中的有關元素,編程者可以獲取關於流覽器和服務器的各種資訊,以及其他重要的數據。

4.3.5Request.Cookies集合

Cookies是附屬於Request對象和Response對象的數據集合。利用Response對象的Cookies集合可將有關資訊作為Cookies寫入客戶端的磁片;而利用Request對象的Cookies集合則可讀取存放在客戶端磁片上的Cookies檔資訊。方法與屬性功能說明CreateObject方法創建一個ActiveX對象(伺服器組件的對象實例)MapPath方法把相對路徑或虛擬路徑轉換為伺服器的物理路徑Execute方法執行指定的ASP程式Transfer方法將控制權轉移至指定的ASP程式HTMLEncode方法對特殊的字串進行HTML編碼URLEncode方法對指定的URL字串編碼,附加在QueryString中返回伺服器ScriptTimeout屬性標明一個腳本程式可以運行的時間期限,默認為90秒4.4.1Server.CreateObject方法

Server.CreateObject方法是Server對象最為重要的方法之一,可用來創建已經註冊到伺服器上的某個ActiveX組件的實例,從而實現一些僅靠腳本語句難以實現的功能。例如對數據庫的連接和訪問、對檔的存取、電子郵件的發送和活動廣告的顯示等。正是因為有了這些ActiveX組件功能的擴展才使得ASP具有強大的生命力。格式:Set對象變數名=Server.CreateObject("ActiveX組件名")

示例:

<%SetFso=Server.CreateObject("Scripting.FileSystemObject")%>4.4Server對象4.4.2Server.MapPath方法Server.MapPath方法的作用是把所指定的相對路徑或者虛擬路徑轉換為物理路徑。示例:

<%Path=Server.MapPath("/form1.asp")Response.Write"form1.asp網頁的實際路徑為:"&Path%>4.4.3Server.Execute方法

Server.Execute方法可以在ASP程式代碼中調用另一個指定的ASP程式,並在執行完畢這個被調用的程式之後返回到原來的程式繼續執行。4.4.4Server.Transfer方法Server.Transfer方法是將ASP程式的當前控制權轉移至另一個指定的ASP程式,並且即使轉移之後的程式已經執行完畢,控制權也不再返回原來的程式。4.4.5Server.HTMLEncode方法Server.HTMLEncode方法的作用是對特定HTML標記進行編碼。假如我們需要原樣輸出含有HTML標記符的字串,那麼就需要對這個HTML字串進行編碼,否則,字串中的HTML標記符會被流覽器解釋,而不能原樣輸出。4.4.6Server.URLEncode方法

Server.URLEncode方法是將字串按照URL地址編碼規則進行編碼。在HTTP協議中,諸如空格和標點符號等符號不能被作為URL資訊形式正確發送。如果在請求頁面的URL地址中或者在發送的查詢字串中存在著不符合URL編碼規則的字元,就必須首先使用URLEncode方法對其進行編碼。4.5Application對象

4.5.1application對象概述使用application對象,能夠使得訪問同一個ASP應用程式的多個客戶端流覽器之間實現資訊共用,因為無論多少個客戶同時訪問該應用程式,都只會產生一個Application對象。通常可以把共用的數據變數存儲在application對象的集合中,這些變數可以在站點應用程式的所有頁面上被所有客戶端使用。Application對象的集合、方法和事件如下表所示。名

稱描

述Contents集合包含所有通過腳本命令添加到應用程式中的資料項目StaticObjects集合包含所有通過<OBJECT>標記添加到應用程式中的對象Lock方法禁止其他用戶修改Application對象記錄的變數值Unlock方法允許其他用戶修改Application對象記錄的變數值Contents.Remove方法從Contents集合中刪除指定的變數值Contents.RemoveAll方法刪除Contents集合中所有的變數值Application_OnStart事件建立Application對象時所觸發的事件Application_OnEnd事件結束Application對象時所觸發的事件4.5.2application對象的集合Application對象具有Contents和StaticObjects兩個集合。Application.StaticObjects集合包含了所有通過<OBJECT>標記添加到應用程式中的對象,而常用的Application.Contents集合則包含了用腳本命令創建的各種簡單變數、數組變數或對象變數。4.5.3application對象的事件

1.Application_OnStart事件

Application_OnStart事件在首次創建新的會話

(即

Session_OnStart事件

)之前被觸發。換言之,當Web伺服器啟動運行並接受對應用程式所包含的ASP檔進行請求時就將觸發此事件。Application_OnStart事件被觸發時所運行的腳本程式必須寫在

Global.asa檔之中,該事件腳本的語法格式如下。

<SCRIPTLANGUAGE=ScriptLanguageRUNAT=Server>SubApplication_OnStart程式塊……EndSub</SCRIPT>2.Application_OnEnd事件

Application_OnEnd事件在應用程式退出時或者服務被終止時被觸發。並且總在Session_OnEnd事件之後發生。此事件腳本也必須寫在

Global.asa檔之中,該事件腳本的語法格式如下。

<SCRIPTLANGUAGE=ScriptLanguageRUNAT=Server>SubApplication_OnEnd程式塊……EndSub</SCRIPT>4.6Session對象

4.6.1Session對象概述

Session對象用來為每個客戶存儲獨立的數據或特定客戶的資訊,而Application對象則用來為所有客戶存儲共用的數據。如果當前有若干個客戶連線到某一個站點,那麼這些客戶除了共用一個Application對象之外,每一個客戶還各自擁有一個獨立的Session對象。使用Session對象可以為每個客戶保存指定的數據。存儲在某個客戶Session對象中的任何數據都可以在該客戶調用下一個頁面時取得。在用戶與網站交互的整個會話期間內,Session對象中的變數值都不會丟失,直到會話超時或訪問者離開時為止,該Session對象才被釋放。Session對象的屬性、集合、方法和事件如下表所示。名

稱描

述Contents集合包含所有通過腳本命令添加到應用程式中的資料項目StaticObjects集合包含所有通過<OBJECT>標記添加到應用程式中的對象SessionID屬性用來表識每一個Session對象TimeOut屬性用來設置Session會話的超時時間(以分鐘表示)Abandon方法強行刪除當前會話的Session對象,釋放系統資源Session_OnStart事件建立Session對象時所激發的事件Session_OnEnd事件結束Session

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论