Heim >Backend-Entwicklung >C#.Net-Tutorial >Einfaches Beispiel für eine ASP-Sitzung
Sitzungsobjekt
Sie können das Sitzungsobjekt verwenden, um Informationen zu speichern, die für eine bestimmte Benutzersitzung benötigt werden. Auf diese Weise gehen die im Session-Objekt gespeicherten Variablen nicht verloren, wenn der Benutzer zwischen den Webseiten der Anwendung wechselt, sondern bleiben während der gesamten Benutzersitzung bestehen.
Wenn ein Benutzer eine Webseite von einer Anwendung anfordert, erstellt der Webserver automatisch ein Sitzungsobjekt, wenn der Benutzer noch keine Sitzung hat. Wenn eine Sitzung abläuft oder abgebrochen wird, beendet der Server die Sitzung.
Eine der häufigsten Verwendungen von Session-Objekten ist das Speichern von Benutzereinstellungen. Wenn der Benutzer beispielsweise angibt, dass er keine Grafiken sehen möchte, kann diese Information im Session-Objekt gespeichert werden. Weitere Informationen zur Verwendung des Session-Objekts finden Sie unter „Verwalten von Sitzungen“ im Abschnitt „ASP-Anwendung“.
Beachten Sie, dass der Sitzungs-Status nur in Browsern erhalten bleibt, die Cookies unterstützen.
Syntax
Session.collection|property|method
Sammlung
Inhalt Enthält Elemente, die mithilfe von Skriptbefehlen zur Sitzung hinzugefügt wurden.
StaticObjects enthält Objekte, die über das 7a4d48e0cef2cd71d96cba7e2b26153a-Tag und den angegebenen Sitzungsbereich erstellt wurden.
Attribute
CodePage Die Codepage, die für die Symbolzuordnung verwendet werden soll.
LCID-Feldidentifikation.
SessionID gibt die Sitzungsüberprüfung des Benutzers zurück.
Timeout Timeout für den Anwendungssitzungsstatus, in Minuten.
Methode
Abandon Diese Methode zerstört das Session-Objekt und gibt seine Ressourcen frei.
Ereignisse
Skripte, die die folgenden Ereignisse in der Datei global.asa deklarieren.
Session_OnEnd
Session_OnStart
Weitere Informationen zu den oben genannten Ereignissen und der global.asa-Datei finden Sie in der Global.asa-Referenz.
Notizen
Sie finden Sie den Wert, der im Objekt gespeichert ist. In einem Sitzungsobjekt gespeicherte Informationen sind innerhalb der Sitzung und des Sitzungsbereichs gültig. Das folgende Skript zeigt, wie zwei Arten von Variablen gespeichert werden.
<% Session("username") = "Janine" Session("age") = 24 %>
Wenn Sie das Objekt jedoch in einem Sitzungsobjekt speichern und VBScript als Hauptskriptsprache verwenden. Es muss das Schlüsselwort Set verwendet werden. Wie im folgenden Skript gezeigt.
<% Set Session("Obj1") = Server.CreateObject("MyComponent.class1") %>
Dann können Sie die von MyComponent.class1 angezeigten Methoden und Eigenschaften auf der folgenden Webseite aufrufen. Die aufrufende Methode lautet wie folgt:
<% Session("Obj1").MyMethod %>
Es kann auch aufgerufen werden, indem eine lokale Kopie des Objekts erweitert und das folgende Skript verwendet wird:
<% Set MyLocalObj1 = Session("Obj1") MyLocalObj1.MyObjMethod %>
Eine andere Möglichkeit, ein sitzungsbezogenes Objekt zu erstellen, ist die Verwendung des 0608b15cbf46deaf8f21feff7e19bce1
Eingebaute Objekte können jedoch nicht in Sitzungsobjekten gespeichert werden. Beispielsweise gibt jede Zeile unten einen Fehler zurück.
<% Set Session("var1") = Session Set Session("var2") = Request Set Session("var3") = Response Set Session("var4") = Server Set Session("var5") = Application %>
Bevor Sie ein Objekt in einem Sitzungsobjekt speichern, müssen Sie wissen, welches Threading-Modell es verwendet. Nur die mit „Beide“ gekennzeichneten Objekte können in einem Sitzungsobjekt gespeichert werden, das die Single-Threaded-Sitzung nicht sperrt. Weitere Informationen finden Sie unter „Auswählen eines Threading-Modells“ in „Erstellen einer ASP-Komponente“.
Wenn Sie ein Array in einem Session-Objekt speichern, ändern Sie die im Array gespeicherten Elemente bitte nicht direkt. Das folgende Skript kann beispielsweise nicht ausgeführt werden.
1751e3f72d4c82754921cb8852945515
Dies liegt daran, dass das Session-Objekt als Sammlung implementiert ist. Das Array-Element StoredArray(3) hat keinen neuen Wert erhalten. Dieser Wert wird in die Anwendungsobjektsammlung aufgenommen und überschreibt alle zuvor an diesem Ort gespeicherten Informationen.
Wir empfehlen dringend, dass Sie beim Speichern eines Arrays in einem Sitzungsobjekt eine Kopie des Arrays erhalten, bevor Sie die Objekte im Array abrufen oder ändern. Wenn Sie ein Array bearbeiten, sollten Sie das gesamte Array im Session-Objekt speichern, damit alle von Ihnen vorgenommenen Änderungen gespeichert werden. Das folgende Skript demonstriert dies.
---file1.asp---
<% 'Creating and initializing the array Dim MyArray() Redim MyArray(5) MyArray(0) = "hello" MyArray(1) = "some other string " 'Storing the array in the Session object Session("StoredArray") = MyArray Response.Re dir ect("file2.asp") %> ---file2.asp--- <% 'Retrieving the array from the Session Object 'and mod if ying its second element LocalArray = Session("StoredArray") LocalArray(1) = " there" ' print ing out the string "hello there" Response.Write(LocalArray(0)&LocalArray(1)) 'Re-storing the array in the Session object 'This overwrites the values in StoredArray with the new values Session("StoredArray") = LocalArray %>
Verwandte Antworten:
Nachdem Sie auf Seite A den richtigen Benutzernamen und das richtige Passwort eingegeben haben,
fügen Sie eine Anweisung hinzu: session( "isLogin")=true
Beurteilen Sie vor Seite B:
if session("isLogin")=false then response.write "未登录" response.en end if
Das ist es
Nach der Anmeldung festgelegt:
session("user")=Benutzername
Eingabe auf Seite B:
if session("user")="" then Response.write("<script>alert('请登陆!');window.history.go(-1);</scritp>") end if
[Verwandte Empfehlungen]
1. ASP-kostenloses Video-Tutorial
2 Einführung in die Sitzung in ASP
3.Lernen Sie, wie Sie das Problem des ASP-Sitzungsverlusts lösen können
4. Einführung in die Sitzung in ASP Drei Methoden von Objekten5. Detaillierte Erläuterung der Techniken zur Verwendung von Session in ASP
Das obige ist der detaillierte Inhalt vonEinfaches Beispiel für eine ASP-Sitzung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!