Najnowsze tutoriale tworzenie stron internetowych
 

ASP Plik Global.asa


Plik Global.asa

Plik Global.asa to opcjonalny plik, który może zawierać deklaracje obiektów, zmiennych i metod, które mogą być udostępniane przez każdą stronę w aplikacji ASP.

Wszystkie ważne skrypty przeglądarek (JavaScript, VBScript, JScript, PerlScript, etc.) Mogą być stosowane w Global.asa.

Plik Global.asa może zawierać wyłącznie:

  • zdarzenia aplikacji
  • zdarzenia sesji
  • <object> Deklaracje
  • TypeLibrary deklaracje
  • dyrektywa #include

Note: Plik Global.asa musi być przechowywany w katalogu głównym aplikacji ASP, a każda aplikacja może mieć tylko jeden plik Global.asa.


Wydarzenia w Global.asa

W Global.asa można powiedzieć aplikacji i sesja obiektów, co zrobić, gdy aplikacja / Włączenie sesji i co zrobić, gdy kończy się application / sesja. Kod do tego jest umieszczony w obsługi zdarzeń. Plik Global.asa może zawierać cztery rodzaje zdarzeń:

Application_OnStart - Występuje, gdy pierwszy użytkownik dzwoni do pierwszej strony w aplikacji ASP. Zdarzenie to występuje po ponownym uruchomieniu serwera WWW lub po plik Global.asa jest edytowany. "Session_OnStart" zdarzenie natychmiast po tym wydarzeniu.

Session_OnStart - To wydarzenie odbywa się za każdym razem nowy użytkownik żąda swoją pierwszą stronę w aplikacji ASP.

Session_OnEnd - To zdarzenie występuje, gdy użytkownik kończy sesję. Użytkownik sesja kończy się po stronie nie został poproszony przez użytkownika na określony czas (by default this is 20 minutes) .

Application_OnEnd - Zdarzenie to występuje po ostatnim użytkownik zakończył sesję. Zazwyczaj jest to zdarzenie, gdy serwer WWW zatrzyma. Procedura ta służy do ustawienia posprzątać po zatrzymaniu aplikacji, takich jak usuwanie rekordów lub zapisu informacji w postaci plików tekstowych.

Plik Global.asa mógłby wyglądać następująco:

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

sub Application_OnStart
' Note: Ponieważ nie możemy korzystać z ograniczników skrypt ASP (<% and %>) , aby wstawić skrypty w pliku Global.asa, kładziemy podprogramów wewnątrz HTML <script> elementu.


<object> Deklaracje

Możliwe jest tworzenie obiektów z sesji lub zakres aplikacji w Global.asa za pomocą <object> tag.

Note: <object> tag powinien być poza <script> tag!

Składnia

<object runat="server" scope=" Parametr Opis scope Ustawia zakres przedmiotu (either Session or Application) id Określa unikalny identyfikator obiektu ProgID Identyfikator powiązany z identyfikatorem klasy. Format ProgID jest [Sprzedawca]. Komponent [.version]

Albo ProgID lub ClassID musi być określona.

ClassID Określa unikatowy identyfikator dla obiektu klasy COM.

Albo ProgID lub ClassID musi być określona.

Przykłady

Pierwszy przykład tworzy obiekt zakresu sesji o nazwie "MyAd" za pomocą parametru ProgID:

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

Drugi przykład tworzy obiekt zakresie aplikacji o nazwie "MyConnection" za pomocą parametru CLASSID:

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

Obiekty zadeklarowane w pliku Global.asa mogą być używane przez każdego skryptu w aplikacji:

GLOBAL.ASA:

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

You could reference the object "MyAd" from any page in the ASP application:

SOME .ASP FILE:

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

TypeLibrary Deklaracje

TypeLibrary jest pojemnik do zawartości pliku DLL odpowiadających obiektu COM. Włączając połączenie z TypeLibrary w pliku Global.asa, stałe obiektu COM mogą być dostępne, a błędy mogą zostać lepiej donosi kodu ASP. Jeśli aplikacja internetowa korzysta z obiektów COM, które zostały zadeklarowane typy danych w bibliotekach typu można deklarować bibliotek typu w Global.asa.

Składnia

<!--METADATA TYPE="TypeLib"
file=" Parametr Opis file Określa bezwzględną ścieżkę do biblioteki typów.

Albo jest wymagany parametr plik lub parametr UUID

uuid Określa unikatowy identyfikator dla biblioteki typów.

Albo jest wymagany parametr plik lub parametr UUID

version Opcjonalny. Używany do wyboru wersję. Jeśli wersja żądanie nie zostanie znaleziony, to najnowsza wersja jest używana lcid Opcjonalny. Identyfikator ustawień regionalnych mają być stosowane do biblioteki typów

wartości błędów

Serwer może zwrócić jeden z następujących komunikatów o błędach:

Kod błędu Opis
ASP 0222 Nieprawidłowy Rodzaj biblioteki
ASP 0223 Nie znaleziono biblioteki typów
ASP 0224 Rodzaj biblioteka nie może być załadowany
ASP 0225 Rodzaj biblioteka nie może być owinięty

Note: Znaczniki metadanych może pojawić się w dowolnym miejscu w pliku Global.asa (both inside and outside <script> tags) . Jednak zaleca się, aby znaczniki metadanych pojawić w górnej części pliku Global.asa.


ograniczenia

Ograniczenia dotyczące tego, co można umieścić w pliku Global.asa:

  • Nie można wyświetlić tekst napisany w pliku Global.asa. Plik ten nie może wyświetlać informacje
  • Można korzystać tylko z serwerem a aplikacją obiektów podprogramów Application_OnStart i Application_OnEnd. W podprogramie Session_OnEnd, można użyć serwera, aplikacji i obiekty sesji. W podprogramie Session_OnStart można użyć dowolnego wbudowanego obiektu

Jak korzystać z podprogramów

Global.asa jest często używany do inicjalizacji zmiennych.

Poniższy przykład pokazuje jak wykrywać dokładnie razem, gdy użytkownik pierwszy przybywa na stronie internetowej. Czas jest przechowywany w zmiennej sesji o nazwie "started" , a wartość z "started" zmienna może być dostępne z każdej strony ASP we wniosku:

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

Global.asa mogą być również wykorzystywane do kontrolowania dostępu do strony.

Poniższy przykład pokazuje, jak przekierować każdego nowego użytkownika do innej strony, w tym przypadku do strony o nazwie "newpage.asp" :

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

I można to funkcje w pliku Global.asa.

W poniższym przykładzie podprogramu Application_OnStart występuje podczas uruchamiania serwera WWW. Następnie podprogram wywołuje inny podprogram Application_OnStart nazwie "getcustomers" . "getcustomers" podprogram otwiera bazę danych i pobiera rekord ustanowiony z "customers" tabeli. W zestawie płyta jest przypisany do tablicy, gdzie można uzyskać z dowolnego strony ASP bez zapytań do bazy danych:

<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>

Przykład Global.asa

W tym przykładzie stworzymy plik Global.asa, który zlicza liczbę obecnych gości.

  • Application_OnStart ustawia zmienną Aplikacja "visitors" na 0, gdy zaczyna serwer
  • Session_OnStart podprogram dodaje jeden do zmiennej "visitors" za każdym razem, gdy nowy użytkownik przybywa
  • Session_OnEnd podprogram odejmuje jeden z "visitors" za każdym razem ten podprogram jest wyzwalane

Plik Global.asa:

<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>

Aby wyświetlić liczbę obecnych użytkowników w pliku ASP:

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