程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> ASP編程 >> 關於ASP編程 >> ASP基礎入門第九篇(Global.asa文件的使用)

ASP基礎入門第九篇(Global.asa文件的使用)

編輯:關於ASP編程

下面我來向大家介紹 Global.asa 文件的使用方法。

   什麼是 Global.asa 文件?它其實是一個可選文件,程序編寫者可以在該文件中指定事件腳本,並聲明具有會話和應用程序作用域的對象。該文件的內容不是用來給用戶顯示的,而是用來存儲事件信息和由應用程序全局使用的對象。該文件的名稱必須是 Global.asa 且必須存放在應用程序的根目錄中。每個應用程序只能有一個 Global.asa 文件。

   在 Global.asa 文件中,如果包含的腳本沒有用 < SCRIPT> 標記封裝,或定義的對象沒有會話或應用程序作用域,則服務器將返回錯誤。我們可以用任何支持腳本的語言編寫 Global.asa 文件中包含的腳本。如果多個事件使用同一種腳本語言,就可以將它們組織在一組 < SCRIPT> 標記中。

   在 Global.asa 文件中聲明的過程只能從一個或多個與 Application_OnStart、Application_OnEnd、Session_OnStart 和 Session_OnEnd 事件相關的腳本中調用。在基於 ASP 的應用程序的 ASP 頁中,它們是不可用的。如果要在應用程序之間共享過程,可在單獨的文件中聲明這些過程,然後使用服務器端包容 (SSI) 語句將該文件包含在調用該過程的 ASP 程序中。通常,包含文件的擴展名應為 .inc。

下面是一個很標准的Global.asa 文件:

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

'Session_OnStart 當客戶首次運行 ASP 應用程序中的任何一個頁面時運行

'Session_OnEnd 當一個客戶的會話超時或退出應用程序時運行

'Application_OnStart 當任何客戶首次訪問該應用程序的首頁時運行

'Application_OnEnd 當該站點的 WEB 服務器關閉時運行

< /SCRIPT>

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

Sub Application_OnStart

VisitorCountFilename = Server.MapPath ("/ex2") + "\VisitCount.txt"

Set FileObject = Server.CreateObject("Scripting.FileSystemObject")

Set Out= FileObject.OpenTextFile (VisitorCountFilename, 1, FALSE, FALSE)

Application("visitors") = Out.ReadLine

Application("VisitorCountFilename") = VisitorCountFilename

End Sub
'=========================================================
SUB Application_OnEnd

Set FileOutObject = Server.CreateObject("Scripting.FileSystemObject")

Set Out= FileOutObject.CreateTextFile (Application("VisitorCountFilename"), TRUE,FALSE)

Out.WriteLine(application("visitors"))

End Sub
'=========================================================Sub Session_OnStart
Session.Timeout = 5

Application("visitors") = Application("visitors") + 1

Session("ID")=Session.SessionID

End Sub

< /SCRIPT>

   在這個 Global.asa 程序中,涉及到了 ASP 的 File Access 組件,它可以提供用於訪問文件系統的方法、屬性和集合。這將在以後 ASP 的組件中進行展開討論。在這裡,它起到了在服務器上創建新文件並對文件進行寫操作的作用。這其實是一個 ASP 頁面訪問記數器應用程序的 Global 文件,首先當客戶首次訪問該應用程序的首頁時 , 過程 Application_OnStart 定義了在服務器上指定的虛擬目錄下新建一個 VisitCount.txt 的文本文件,並將文件的路徑和內容保存在應用程序級的變量中。而當任何一個客戶訪問 ASP 應用程序中的任何一個頁面時,過程 Session_OnStart 定義將應用程序級的變量 visitors 的值自動加一。這樣,每當有客戶訪問頁面時,變量 visitors 都將自動加一,以起到統計點擊率的作用。由於變量 visitors 的值是存儲在系統內存之中,所以如果服務器關閉或重新啟動,存儲在變量中的數據將自動丟失,所以通過定義過程 Application_OnEnd,在服務器關閉或重啟之前將數據寫入事先建立的文本文件之中,這樣就能確保當服務器再次啟動時,Application_OnStart 過程可以從 VisitCount.txt 文件中讀取以前的統計數。

以上就是本文的全部內容,希望對大家的學習有所幫助。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved