国产午夜成人免费看片无遮挡_日本免费xxxx色视频_免费人成网上在线观看_黄网址在线永久免费观看

當前位置:雨林木風下載站 > 技術開發教程 > 詳細頁面

ASP 3.0高級編程(8) 

ASP 3.0高級編程(8) 

更新時間:2022-05-09 文章作者:未知 信息來源:網絡 閱讀次數:

3.3 ASP的Application對象和Session對象
       本章已經討論了兩個ASP對象:Application對象和Session對象,因此能夠訪問Application對象和Session對象提供的集合、方法、屬性和事件。本節將從程序設計的角度對這兩個對象進行研究。 
       · 當載入ASP DLL并響應對一個ASP網頁的第一個請求時,創建 Application對象。該對象提供一個存儲場所,用來存儲對于所有訪問者打開的所有網頁都可用的變量和對象。
       · 當訪問者首次從站點請求一個ASP頁面時,為他創建一個Session對象,并保持有效直到缺省的超時周期(或由腳本確定的超時周期)。該對象提供一個存儲場所,用來存儲僅僅對該訪問者在會話的活動期間打開的網頁可用的變量和對象。
       圖3-12(即圖1-20)給出了用戶的請求和服務器的響應在會話中的分布情況。所有的會話都在ASP應用程序中。

圖3-12  ASP對象關系

3.3.1  ASP的Application對象成員概述
       本節說明Application對象的集合、方法和事件(Application對象沒有屬性)。在下一節對Session對象(具有屬性)進行同樣的說明。然后將繼續探討使用這些對象所完成的任務,更詳細地說明每個對象的各成員如何進行工作。
1.  Application對象的集合
Application對象提供了兩個集合,可以用來訪問存儲于全局應用程序空間中的變量和對象。集合及說明如表3-3所示: 
表3-3  Application對象的集合及說明
集 合 
說 明 

Contents 
沒有使用<OBJECT>元素定義的存儲于Application對象中的所有變量(及它們的值)的一個集合。包括Variant數組和Variant類型對象實例的引用 

StaticObjects 
使用<OBJECT>元素定義的存儲于Application對象中的所有變量(及它們的值)的一個集合 

2.  Application對象的方法
Application對象的方法允許刪除全局應用程序空間中的值,控制在該空間內對變量的并發訪問。方法及說明如表3-4所示:
表3-4  Application對象的方法及說明
方 法 
說 明 

Contents.Remove(“variable_name”) 
從Application.Content集合中刪除一個名為variable_name的變量 

Contents.RemoveAll() 
從Application.Content集合中刪除所有變量 

Lock() 
鎖定Application對象,使得只有當前的ASP頁面對內容能夠進行訪問。用于確保通過允許兩個用戶同時地讀取和修改該值的方法而進行的并發操作不會破壞內容 

Unlock() 
解除對在Application對象上的ASP網頁的鎖定 

注意,在運行期間不能從Application.StaticObjects集合中刪除變量。
3.  Application對象的事件
Application對象提供了在它啟動和結束時觸發的兩個事件,如表3-5所示:
表3-5  Application對象的事件及說明
事 件 
說 明 

OnStart 
當ASP啟動時觸發,在用戶請求的網頁執行之前和任何用戶創建Session對象之前。用于初始化變量、創建對象或運行其他代碼 

OnEnd 
當ASP應用程序結束時觸發。在最后一個用戶會話已經結束并且該會話的OnEnd事件中的所有代碼已經執行之后發生。其結束時,應用程序中存在的所有變量被取消 


3.3.2  ASP的Session對象成員概述
本節概述Session對象的所有成員。
1.  Session對象的集合
Session對象提供了兩個集合,可以用來訪問存儲于用戶的局部會話空間中的變量和對象。這些集合及說明如表3-6所示: 
表3-6  Session對象的集合及說明
集 合 
說 明 

Contents 
存儲于這個特定Session對象中的所有變量和其值的一個集合,并且這些變量和值沒有使用<OBJECT>元素進行定義。包括Variant數組和Variant類型對象實例的引用 

StaticObjects 
通過使用<OBJECT>元素定義的、存儲于這個Session對象中的所有變量的一個集合 

2.  Session對象的特性
Session對象提供了四個屬性。這些屬性及說明如表3-7所示:
表3-7  Session對象的屬性及說明
屬 性 
說 明 

CodePage 
讀/寫。整型。定義用于在瀏覽器中顯示頁內容的代碼頁(Code Page)。代碼頁是字符集的數字值,不同的語言和場所可能使用不同的代碼頁。例如,ANSI代碼頁1252用于美國英語和大多數歐洲語言。代碼頁932用于日文字 

LCID 
讀/寫。整型。定義發送給瀏覽器的頁面地區標識(LCID)。LCID是唯一地標識地區的一個國際標準縮寫,例如,2057定義當前地區的貨幣符號是’£’。LCID也可用于FormatCurrency等語句中,只要其中有一個可選的LCID參數。LCID 也可在ASP處理指令<%…%>中設置,并優先于會話的LCID屬性中的設置。本章后面提供一個ASP處理指令的列表  

SessionID 
只讀。長整型。返回這個會話的會話標識符,創建會話時,該標識符由服務器產生。只在父Application對象的生存期內是唯一的,因此當一個新的應用程序啟動時可重新使用 

Timeout 
讀/寫。整型。為這個會話定義以分鐘為單位的超時周期。如果用戶在超時周期內沒有進行刷新或請求一個網頁,該會話結束。在各網頁中根據需要可以修改。缺省值是10min。在使用率高的站點上該時間應更短 

3.  Session對象的方法
Session對象允許從用戶級的會話空間刪除指定值,并根據需要終止會話。Seesion對象的方法及說明如表3-8所示:
表3-8  Session對象的方法及說明
方 法 
說 明 

Contents.Remove(“variable_name”) 
從Session.Content集合中刪除一個名為variable_name的變量 

Contents.RemoveAll() 
從Session.Content集合中刪除所有變量 

Abandon() 
當網頁的執行完成時,結束當前用戶會話并撤消當前Session對象。但即使在調用該方法以后,仍可訪問該頁中的當前會話的變量。當用戶請求下一個頁面時將啟動一個新的會話,并建立一個新的Session對象(如果存在的話)  

       注意,在運行期間不能從Session.StaticObjects集合中刪除變量。
4.  Session對象的事件
Session對象提供了在啟動和結束時觸發的兩個事件,如表3-9所示:
表3-9  Session對象的事件及說明
事 件 
說 明 

OnStart 
當ASP用戶會話啟動時觸發,在用戶請求的網頁執行之前。用于初始化變量、創建對象或運行其他代碼。  

OnEnd 
當ASP用戶會話結束時觸發。從用戶對應用程序的最后一個頁面請求開始,如果已經超出預定的會話超時周期則觸發該事件。當會話結束時,取消該會話中的所有變量。在代碼中使用Abandon方法結束ASP用戶會話時,也觸發該事件  


3.3.3 使用Application和Session的事件
    ASP的Application和Session對象體現了其他ASP內置對象所沒有的特征——事件。然而,正像在前面的對象成員表中看到的那樣,這些都是ASP會話和應用程序的工作相聯系的事件。
1.  Application和Session的事件處理器
每當一個應用程序或會話啟動或結束時,ASP觸發一個事件。可以通過在一個特殊的文件中編寫普通的腳本代碼來檢測和應答這些事件,這個文件名為global.asa,位于一個應用程序的根目錄中(對于缺省的Web網站是\InetPub\WWWRoot目錄,或是作為一個實際應用程序定義的一個文件夾)。這個文件可以包含一個或多個HTML的<OBJECT>元素,用于創建將在該應用程序或用戶會話內使用的組件實例。
在第4章中將詳細地介紹如何創建組件實例。下面的代碼是global.asa文件的一個例子。我們只關注<OBJECT>元素以及以Set關鍵字開始的那些代碼行:
<!-- Declare instance of the ASPCounter component
    with application-level scope //-->
<OBJECT ID=”ASPCounter” RUNAT=”Server” SCOPE=”Application”
    PROGID=”MSWC.Counters”>
</OBJECT>

<!-- Declare instance of the ASPContentLimk component
    with session-level scope //-->
<OBJECT ID=”ASPContentLink” RUNAT=”Server” SCOPE=”Session”
    PROGID=”MSWC.NextLink”>
</OBJECT>

<SCRIPT LANGUAGE=”VBScript” RUNAT=”Server”>

Sub Application_onStart()
‘Create an instance of an ADO Recordset with application-level scope
Set Application(“ADOConnection”) _
= Server.CreateObject(“ADODB.Connection”)
    Dim varArray(3)                    ;   ‘Create a Variant array and fill it
        VarArray(0) = “This is a”
        VarArray(1) = “Variant array”
        VarArray(2) = “stored in the”
        VarArray(3) = “Application object”
        Application(“Variant_Array”) = varArray‘Store it in the Application
        Application(“Start_Time”) = CStr(Now) ‘Store the date/time as a string
        Application(“Visit_Count”) = 0        ‘Set Counter variable to zero
    End Sub

    Sub Application_onEnd()
        Set Application(“ADOConnection”) = Nothing
    End Sub

    Sub Sesson_onStart()
    ‘Create an instance of the AdRotator component with session-level scope
        Set Session(“ASPAdRotator”) = Server.CreateObject (“MSWC.AdRotator”)
        Dim varArray(3)                    ;   ‘Create a Variant arry and fill it
        VarArray(0) = “This is a”
        VarArray(1) = “Variant array”
        VarArray(2) = “stored in the”
        VarArray(3) = “Session object”
        Session(“Variant_Array”) = varArray    ‘Store it in the Session
        Session(“Start_Time”) = CStr(Now)      ‘Store the date/time as a string

        ‘We can access the contents of the Request and Response in a Session_onStart
        ‘event handler for the page that initiated the session. This is the *only*
        ‘place that the ASP page context is available like this.
        ‘as an example, we can get the IP address of the user:
        Session(“Your_IP_Address”) = Request.ServerVariables (“REMOTE_ADDR”)
        Application.Lock
        intVisits = Application(“Visit_Count”) +1
        Application(“Visit_Count”) = intVisits
        Application.Unlock
    End Sub

    Sub Session_onEnd()
        Set Session(“ASPAdRotator”) = Nothing
    End Sub
    </SCRIPT>
    因為這個global.asa文件用于本章中的示例頁面,所以將需要將該文件放到Web網站的根目錄中,或者放到已配置為一個虛擬應用程序的目錄中,并且在該目錄中包含有其他示例文件。
    讀取和存儲值
    注意上面的例子怎樣讀取Application和Session的變量,與在Request和Response對象的集合中所采取的方式相同。設置這些變量的值:
    Application(“variable_name”) = variable_value
    Application(“variable_name”) = variant_array_variable_name
    Set Application(“variable_name”) = object_reference
    獲取這些變量的值:
    variable_value = Application(“variable_name”)
    variant_array_variable = Application(“variable_name”)
    Set object_reference = Application(“variable_name”)
    當然,對于Session對象可采取同樣的方法。
    可以看到,當從一個Session事件處理器訪問時,怎樣“鎖定”(Lock)和“解鎖”(unlock)該Application對象;當從一個ASP網頁訪問時,需要進行相同的處理。用Application事件內的代碼訪問Application對象中的值時,不要求這么做。這是因為在任何應用程序中只有一個Application對象的實例,并且其事件處理器的代碼只在沒有活動的用戶會話時進行。
    也可以看到一個基本的用戶會話計數器是如何實現的。這里使用一個應用程序級的變量 Visit_count,當新的會話啟動時它就自動增加。    一般也不限制簡單地把值保存到Application 或Session對象中。例如,Web開發者的Web站點在http://webdev.wrox.co.uk上,有相應的一個global.asa文件,當一個新的會話啟動時該文件就在服務器上的數據庫中寫入相應的條目,數據細節從Request.ServerVariables集合中獲取。這提供了一個基本的方法統計訪問者的數量,并收集訪問者的一些基本信息。

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

国产午夜成人免费看片无遮挡_日本免费xxxx色视频_免费人成网上在线观看_黄网址在线永久免费观看

  • <label id="pxtpz"><meter id="pxtpz"></meter></label>
      1. <span id="pxtpz"><optgroup id="pxtpz"></optgroup></span>

        日韩亚洲国产中文字幕欧美| 精品一区二区在线看| 亚洲一二三四在线观看| 国产成人av电影免费在线观看| 欧美老女人第四色| 亚洲成精国产精品女| 7777精品久久久大香线蕉| 免费成人性网站| 久久精品一二三| 99久久综合国产精品| 亚洲午夜免费视频| 日韩女优电影在线观看| 国产成人自拍在线| 一卡二卡欧美日韩| 日韩手机在线导航| aaa欧美色吧激情视频| 亚洲一区二区三区三| 久久一日本道色综合| 91免费看视频| 久久99精品国产91久久来源| 国产精品视频第一区| 欧美日韩不卡视频| 国产91精品一区二区| 亚洲成人激情av| 欧美国产一区在线| 欧美一区二区黄| 91丨九色porny丨蝌蚪| 石原莉奈在线亚洲二区| 国产精品灌醉下药二区| 欧美xxx久久| 欧美性大战久久| 成人av免费网站| 久99久精品视频免费观看| 中文字幕一区二区三区四区不卡| 欧美人牲a欧美精品| 色综合中文综合网| 成人免费看视频| 日韩精品三区四区| 亚洲人123区| 欧美高清在线一区| 久久色在线观看| 日韩视频一区二区三区在线播放 | 国产成人免费av在线| 日韩精品一二区| 亚洲成人自拍一区| 一区二区三区在线免费播放| 中文字幕不卡在线| 久久香蕉国产线看观看99| 欧美日韩精品一区二区三区四区| 97国产精品videossex| 国产精品系列在线观看| 黄一区二区三区| 精品一区二区三区在线播放| 日本91福利区| 日本大胆欧美人术艺术动态| 五月天激情综合网| 日韩av一二三| 蜜桃久久久久久久| 国产一区在线不卡| 韩国v欧美v日本v亚洲v| 蜜臀av一级做a爰片久久| 日韩高清一区在线| 青娱乐精品在线视频| 久久99精品视频| 福利视频网站一区二区三区| 国产成人精品午夜视频免费| 国产精品一区二区久久精品爱涩| 麻豆精品国产传媒mv男同| 激情综合网激情| 国产91丝袜在线播放九色| 91亚洲男人天堂| 在线精品亚洲一区二区不卡| 欧美丝袜自拍制服另类| 欧美日韩在线播放一区| 日韩一区二区三区三四区视频在线观看 | 亚洲超丰满肉感bbw| 奇米777欧美一区二区| 国内精品在线播放| 成年人网站91| 欧美优质美女网站| 6080yy午夜一二三区久久| www欧美成人18+| 综合网在线视频| 亚洲成av人片在线观看| 国产一区在线不卡| 色噜噜狠狠色综合中国| 欧美日产国产精品| 久久久综合视频| 一区二区三区在线高清| 激情小说欧美图片| 色88888久久久久久影院野外 | 国产欧美精品区一区二区三区 | 亚洲男人的天堂在线观看| 亚洲免费av高清| 美国av一区二区| 欧美优质美女网站| 国产亚洲精品久| 一区二区激情小说| 国产福利精品导航| 91精品国产全国免费观看| 国产精品国产精品国产专区不片| 日韩精品成人一区二区在线| 91免费视频大全| 日本一区二区三区在线观看| 夜夜操天天操亚洲| 9色porny自拍视频一区二区| 日韩视频免费观看高清在线视频| 亚洲免费av观看| 国产91精品一区二区麻豆亚洲| 欧美一区二区三区爱爱| 一区二区久久久久久| 粉嫩aⅴ一区二区三区四区 | 在线观看亚洲专区| 久久久精品中文字幕麻豆发布| 一区二区三区精品视频| 成人av电影在线网| 久久久另类综合| 麻豆成人在线观看| 欧美人与z0zoxxxx视频| 一区二区三区蜜桃| 成人精品国产福利| 欧美国产一区二区在线观看| 久久精品72免费观看| 717成人午夜免费福利电影| 一区二区三区中文字幕电影| k8久久久一区二区三区| 中文字幕av一区二区三区| 久久 天天综合| 欧美成人一区二区三区在线观看| 亚洲成av人片在线观看无码| 色婷婷精品大在线视频| 亚洲免费伊人电影| 91网站在线播放| 亚洲特级片在线| 99re8在线精品视频免费播放| 国产精品盗摄一区二区三区| av电影天堂一区二区在线| 中文字幕一区二区不卡| 99国产麻豆精品| 樱花影视一区二区| 欧洲另类一二三四区| 一区二区三区日韩精品| 在线观看区一区二| 婷婷久久综合九色国产成人| 在线不卡a资源高清| 久久成人免费网| 久久久久久久综合色一本| 国产91丝袜在线18| 亚洲免费观看高清| 欧美日韩精品系列| 免费黄网站欧美| 久久久www成人免费毛片麻豆| 国产精品99久久久久久有的能看 | 精品88久久久久88久久久| 韩国v欧美v日本v亚洲v| 国产精品女上位| 欧美日韩精品免费观看视频| 蜜臀av在线播放一区二区三区| 久久这里只精品最新地址| 国产盗摄一区二区三区| 亚洲啪啪综合av一区二区三区| 欧美色综合天天久久综合精品| 免费美女久久99| 国产精品三级av| 69堂亚洲精品首页| 国产精品一区二区久激情瑜伽 | 精品视频999| 久久国产乱子精品免费女| 国产精品灌醉下药二区| 欧美人与禽zozo性伦| 国产传媒欧美日韩成人| 一区二区三区欧美久久| 国产午夜精品理论片a级大结局| 色综合久久久网| 国产一本一道久久香蕉| 亚洲国产日韩综合久久精品| 久久久久国色av免费看影院| 欧美视频中文一区二区三区在线观看| 黄网站免费久久| 日韩中文字幕av电影| 国产精品久久久久aaaa| 欧美大胆人体bbbb| 欧美午夜电影一区| 色综合色综合色综合色综合色综合| 免费成人av在线| 夜夜爽夜夜爽精品视频| 国产精品国产精品国产专区不蜜| 日韩精品一区二区三区在线观看 | 日韩一区二区三区精品视频| 91亚洲精品久久久蜜桃网站| 国产一区二区不卡老阿姨| 视频一区欧美精品| 亚洲激情校园春色| 国产欧美一区二区三区鸳鸯浴| 这里是久久伊人| 91精品91久久久中77777| 高清在线成人网| 国产河南妇女毛片精品久久久 | a亚洲天堂av| 国产福利91精品一区|