Latest web development tutorials

ASP Global.asa

Datei Global.asa

Global.asa-Datei ist eine optionale Datei, die Erklärungen unterliegen ASP-Anwendungen auf jeder Seite zugegriffen wird, Variablen und Methoden enthalten.

Alle legitimen Browser-Skripte (JavaScript, VBScript, JScript, PerlScript etc.) können in der Global.asa verwendet werden.

Global.asa Datei kann nur folgende Angaben enthalten:

  • Anwendungsereignisse
  • Session-Ereignis
  • <Objekt> Aussage
  • Typelibrary Statement
  • # include-Direktive

Hinweis: Global.asa - Datei muss im Stammverzeichnis der ASP - Anwendung gespeichert werden, und jede Anwendung nur eine Datei Global.asa haben kann.


Global.asa Veranstaltungen

In Global.asa können Sie die Anwendung und Sitzungsobjekte erzählen, wenn die Anwendung / Session, was beginnen, was zu tun ist, zu tun, wenn das Ende der Anmeldung / Sitzung. Der Code für diese Aufgabe wird in der Event-Handler gesetzt. Datei Global.asa vier Arten von Ereignissen enthalten:

Application_OnStart - Dieses Ereignis tritt ein, wenn ein Benutzer ruft die erste ASP - Anwendung ersten Seite.Dieses Ereignis wird den Web-Server neu starten oder auftreten, nachdem die Global.asa Datei bearbeitet wird. "Session_OnStart" Ereignis tritt nach diesem Ereignis sofort auftritt.

Session_OnStart - Dieses Ereignis tritt ein, wenn ein neuer Benutzer fordert ihn (sie) in einer ASP - Anwendung auf der ersten Seite.

Session_OnEnd - Dieses Ereignis tritt ein, wenn der Endbenutzer - Sitzung.Wenn der Benutzer keine Seite anfordert, die Benutzersitzung innerhalb einer vorgegebenen Zeit enden wird (der Standardzeit beträgt 20 Minuten).

Application_OnEnd - Dieses Ereignis wird, nachdem der Benutzer beendet die Sitzung zuletzt auftritt.Typischerweise tritt das Ereignis, wenn der Web-Server gestoppt wird. Dieses Unterprogramm wird nach der Anwendung verwendet Löscheinstellungen zu stoppen, wie löschen Aufzeichnungen oder Informationen in eine Textdatei schreiben.

Eine Datei Global.asa könnte so aussehen:

<script language="vbscript" runat="server">

sub Application_OnStart
'some code
end sub

sub Application_OnEnd
'some code
end sub

sub Session_OnStart
'some code
end sub

sub Session_OnEnd
'some code
end sub

</script>

Hinweis: Da wir nicht die ASP - Skript - Trennzeichen (<% und%>) einfügen Skripte in der Datei Global.asa verwenden können, müssen wir Routine im HTML platziert zu behandeln <script> Element im Inneren.


<Objekt> Aussage

Kann <object> -Tag durch die Verwendung von Objekten mit Sitzung oder Anwendungsspektrum in Global.asa-Datei zu erstellen.

HINWEIS: <object> -Tag sollte außerhalb des <script> Tag sein!

Grammatik

<object runat="server" scope="scope" id="id" {progid="progID"|classid="classID"}>
....
</object>

参数 描述
scope 设置对象(Session 或 Application)的作用域。
id 为对象指定一个唯一的 id。
ProgID 与 ClassID 关联的 id。ProgID 的格式是:[Vendor.]Component[.Version]。

ProgID 或 ClassID 必需被指定。

ClassID 为 COM 类对象指定一个唯一的 id。

ProgID 或 ClassID 必需被指定。

Beispiele

Die erste Instanz durch den Programm-ID-Parameter mit Hilfe eines Session-Scope-Objekt namens "MyAd" von:

<object runat="server" scope="session" id="MyAd" progid="MSWC.AdRotator">
</object>

Die zweite Instanz wird unter Verwendung der Parameter ClassID Anwendungsbereich erstellt "MyConnection" von Objekte genannt:

<object runat="server" scope="application" id="MyConnection"
classid="Clsid:8AD3067A-B3FC-11CF-A560-00A0C9081C21">
</object>

Objekte in der Datei Global.asa deklariert wurde, kann jede Anwendung Skript sein:

GLOBAL.ASA:

<object runat="server" scope="session" id="MyAd" progid="MSWC.AdRotator">
</object>

您可以从 ASP 应用程序中的任意页面引用 "MyAd" 对象:

某个 .ASP 文件:

<%=MyAd.GetAdvertisement("/banners/adrot.txt")%>


Typelibrary Statement

Typelibrary (Typbibliothek) ist ein Behälter, der eine entsprechende COM-Objekt-DLL-Dateien enthält. Durch die Einbeziehung, um einen Anruf zu Typbibliothek in der Datei Global.asa können Sie die Konstanten des COM-Objekts zugreifen, und der ASP-Code auch besser in der Lage, Fehler zu melden. Wenn Ihre Web-Anwendung auf COM-Objekt-Datentypen beruht in einer Typbibliothek deklariert, können Sie Bibliotheken in Global.asa Anweisung eingeben.

Grammatik

<!--METADATA TYPE="TypeLib"
file="filename" uuid="id" version="number" lcid="localeid"
-->

参数 描述
file 规定指向类型库的绝对路径。

file 参数或者 uuid 参数,两者缺一不可。

uuid 规定了类型库的唯一的标识符。

file 参数或者 uuid 参数,两者缺一不可。

version 可选。用于选择版本。如果没有找到需要的版本,将使用最接近的版本。
lcid 可选。用于类型库的地区标识符。

Fehlerwert

Der Server liefert eine der folgenden Fehlermeldung:

错误代码 描述
ASP 0222 无效的类型库规范
ASP 0223 没有找到类型库
ASP 0224 无法加载类型库
ASP 0225 无法包装类型库

Hinweis: Metadata - Tag in der Global.asa überall Datei (innerhalb und außerhalb des <script> -Tag sein kann) wird angezeigt.Wir empfehlen jedoch noch METADATA Tag am Anfang der Datei Global.asa platziert.


begrenzt

Über Global.asa Datei kann definiert im Inhalt referenziert werden:

  • Global.asa-Datei, die Sie nicht Text anzeigen kann. Diese Datei kann keine Informationen angezeigt werden soll.
  • Sie können nur Server verwenden und Anwendungsobjekte Application_OnStart und Application_OnEnd Subroutinen. Im Session_OnEnd Unterprogramm können Sie den Server, Anwendung und Session-Objekte verwenden. Im Session_OnStart Unterprogramm können Sie einen beliebigen integrierten Objekt verwenden.

Wie Subroutinen zu verwenden

Global.asa häufig verwendeten Variablen zu initialisieren.

Das folgende Beispiel zeigt, wie die genaue Zeit der Website-Besucher kommen zuerst zu erkennen. Die Zeit in der Session-Objekt gespeichert wird, genannt "gestartet" in, und der Wert von "gestartet" Variable beliebige ASP-Anwendung Seitenaufrufe sein kann:

<script language="vbscript" runat="server">
sub Session_OnStart
Session("started")=now()
end sub
</script>

Global.asa kann auch verwendet werden, den Zugriff auf der Seite zu steuern.

Das folgende Beispiel zeigt, wie jede neue Besucher auf eine andere Seite umgeleitet werden, in diesem Fall den Namen zu einer "newpage.asp" Seite gerichtet werden:

<script language="vbscript" runat="server">
sub Session_OnStart
Response.Redirect("newpage.asp")
end sub
</script>

Sie können Funktionen in der Global.asa-Datei enthalten.

Im folgenden Beispiel, wenn der Web-Server startet, wird Application_OnStart Unterprogramm starten. Dann ruft Application_OnStart ein anderes Unterprogramm "GetCustomers" Unterprogramm genannt. "GetCustomers" Unterprogramm öffnet eine Datenbank und ruft einen Datensatz aus der "Kunden" Tisch. Diese Aufzeichnung wird auf eine Reihe von Montage zugewiesen, ohne die Datenbank abfragen, alle ASP-Seiten dieses Array zuzugreifen:

<script language="vbscript" runat="server">

sub Application_OnStart
getcustomers
end sub

sub getcustomers
set conn=Server.CreateObject("ADODB.Connection")
conn.Provider="Microsoft.Jet.OLEDB.4.0"
conn.Open "c:/webdata/northwind.mdb"
set rs=conn.execute("select name from customers")
Application("customers")=rs.GetRows
rs.Close
conn.Close
end sub

</script>


Global.asa Beispiele

In diesem Beispiel werden wir eine Berechnung der aktuellen Anzahl der Besucher Global.asa-Datei zu erstellen.

  • Wenn der Server startet, setzen Application_OnStart die Application-Variable "Besucher" ist 0.
  • Immer wenn eine neue Besucher zu Besuch kommen, wird Session_OnStart Unterprogramm auf die Variable "Besucher" plus eins.
  • Jedes Mal, wenn Session_OnEnd Unterprogramm ausgelöst wird, wird das Unterprogramm von den variablen "Besucher" 1 subtrahieren.

Global.asa-Datei:

<script language="vbscript" runat="server">

Sub Application_OnStart
Application("visitors")=0
End Sub

Sub Session_OnStart
Application.Lock
Application("visitors")=Application("visitors")+1
Application.UnLock
End Sub

Sub Session_OnEnd
Application.Lock
Application("visitors")=Application("visitors")-1
Application.UnLock
End Sub

</script>

In der ASP-Datei, die die aktuelle Anzahl der Besucher zeigt:

<!DOCTYPE html>
<html>
<head>
</head>
<body>
<p>There are <%response.write(Application("visitors"))%> online now!</p>
</body>
</html>