ASP實用大全-ASP對象(4)
發表時間:2024-06-12 來源:明輝站整理相關軟件相關文章人氣:
Server對象提供對服務器上訪問的方法和屬性.大多數方法和屬性是作為實用程序的功能提供的。
語法: Server.property method
屬性(property)
Server對象只有一個屬性:ScriptTimeout 程序能夠運行的最大時間
方法(Methods)
CreateObject 建立一個對象實例.
Execute 執行一個asp文件
GetLastError 返回一個錯誤代碼
HTMLEncode 對指定的HTML代碼進行轉換.
MapPath 將一個相對路徑轉化為一個絕對路徑.
Transfer 將當前的所有狀態信息發送給另一個asp文件
URLEncode 以URL形式轉化指定的代碼,包括空格
Server對象的方法詳細說明
CreateObject 語法
Server.CreateObject( progID )
參數
progID
指定要創建的組件名稱,格式如下: [Vendor.]Component[.Version].
要點:
一般來說,用由Server.CreateObject方法創建的對象擁有頁面的范圍.這就說,當這頁的asp程序執行完后,這種對象會自動地消失.
為了創建一個擁有Session或Application范圍的對象,你可以在Global.asa文件中使用
Execute Execute 方法呼叫一個ASP文件并且執行它就像這個呼叫的ASP文件存在這個ASP文件中一樣。這很像許多語言中的類的調用。
語法
Server.Execute( Path )
參數
Path
指定執行的那個asp文件的路徑。如是它是一個絕對路徑,那么它必須是一個在這個ASP應用程序相同的地方(目錄)。
講解
Server.Execute 方法提供了一種將一個復雜ASP應用程序分化為小塊單位來執行的方法。通過這種方法,你能夠建一個ASP圖書館,你能夠隨便在你需要時調用你圖書館中的ASP文件。這個就有點像SSI了!嘿嘿!
當IIS根據指定的ASP文件路徑執行完這個ASP文件之后,就會自動返回以前的ASP文件。這個剛剛執行完的ASP文件有可能改變了HTTP head.但是和其它的ASP文件一樣,當程序試圖改變http head時,就會報錯!
這個path參數可以包括一個詢問信息。
如果在被呼叫和呼叫的ASP文件中都含有相同的子函數,那么這些子函數只在本ASP文件中起作用。舉個例子,如果在下面的ASP1和ASP2兩個文件中都含有放棄程序的子函數。首先ASP1呼叫ASP2,那么ASP2中的的OnTransactionAbort開始執行,當ASP2執行完畢,ASP1中的OnTransactionAbort才開始執行。
ASP1:< %@ Transaction=Required%> < % Server.Execute ("Page22.asp")
Sub OnTransactionAbort
Sub OnTransactionCommit %>
|
Asp2.asp:< %@ Transaction=Required
Sub OnTransactionAbort
Sub OnTransactionCommit %>
|
Example
ASP1
< % Response.Write("I am going to execute ASP2 ") Server.Execute("/myasps/asp2.asp") %>
ASP2
< % Response.Write("Here I am")%>
|
GetLastError GetLastError 方法返回一個ASPError Object 來描述一個錯誤信息.這個方法只適用于在asp文件發送任何內容給用戶機之前.
語法
Server.GetLastError ()
要點
如果一個500;100 用戶錯誤已經被定義在一個asp應用程序中,它是指的一個以.asp為后綴的文件。這種情況下,在這個程序運行時當一個錯誤發生時,服務器就會自動的以Server.Transfer這種方式傳送到這個正在執行的ASP頁面。ASP應用程序就會將有效的處理這個錯誤。另外,這個ASPError Object一定要有效,這樣你就能夠看到服務器提供給你的錯誤信息來改這個文件了!
一般的Web Site 都是根據文件\iishelp\common\500-100.asp來構造的。你能夠用它來執行一個asp錯誤,當然你能夠自己定義了!。如果你想改變為另外一個asp文件的來執行這些用戶錯誤。那么你可以用IIS中的snap-in.
注意:當IIS發現了一個asp文件或者global.asa文件中的一個錯誤,那么一個500;100用戶錯誤產生。以下的程序將不能執行!
Example
下面的三個例子證明不同的錯誤會產生的用戶錯誤。三個錯誤是:
編譯錯誤
運行錯誤
邏輯錯誤
第一個例子證明了一個編譯錯誤,就是當IIS試圖包含一個文件時產生的。這個錯誤會產生是因為在這個包含文件中沒有定義所需的參數。第二個例子顯示的是一個運行錯誤,這個程序中斷的原因是程序中沒有“next".第三個例子顯示的是一個邏輯錯誤,因為這個程序試圖除以一個0. 不行啦!
Example 1
< % response.write "hello" %>
Example 2
< % dim I for i=1 to 1 nxt %>
Example 3
< % dim i,j dim sum sum=0 j=0
for i=1 to 10 sum=sum+1 next
sum=sum/j %>
|
HTMLEncode HTMLEncode方法對指定的字符串進行HTML編碼.
語法
Server.HTMLEncode( string )
參數
string 要進行編碼的字符
例子
下面的程序:
< %= Server.HTMLEncode("The paragraph tag: ") %>
輸出為:
The paragraph tag:
注意 程序執行后在瀏覽器中看到的是:
The paragraph tag:
但是如果你用"查看源文件"看一下的話,源代碼就不是了.