Latest web development tutorials

ASP Session Object

Celem sesji jest używany do przechowywania informacji o sesji użytkownika (sesji), albo zmienić sesji użytkownika (sesja) ustawień.


Obiekt Session

Podczas korzystania z aplikacji na komputerze, otwórz ją, zrobić jakieś zmiany, a następnie zamknij ją. To jak rozmowa (Session). Komputer wie, kim jesteś. Oczywiste jest, że otwieranie i zamykanie aplikacji kiedy. Jednak w Internecie, nasuwa się pytanie: nie można trzymać ponieważ adres HTTP, serwer WWW nie wie kim jesteś i co zrobiłeś.

ASP tworząc unikalny cookie dla każdego użytkownika w celu rozwiązania tego problemu. Cookie jest przenoszony do komputera użytkownika, który zawiera informacje umożliwiające identyfikację użytkownika. Interfejs ten jest nazywany obiektu Session.

Celem sesji jest używany do przechowywania informacji o sesji użytkownika (sesji), albo zmienić sesji użytkownika (sesja) ustawień.

Zmienna przechowuje informacje pojedynczego użytkownika jest przechowywany w obiekcie Session, i są dostępne dla aplikacji na wszystkich stronach. Przechowywany w zmiennej sesji informacji publicznej jest zwykle nazwa, identyfikator oraz parametry. Serwer tworzy nową sesję dla każdego nowego użytkownika, a wycofać się z obiektu Session po wygaśnięciu sesji.


Sesja Kiedy zacząć?

Sesja rozpoczyna się:

  • Nowy użytkownik żąda pliku ASP, a File odwołuje Global.asa Session_OnStart podprogram
  • Wartość przechowywana w zmiennej sesji
  • Użytkownik żąda pliku ASP, a Global.asa użyć tagu <OBJECT> przez zakres sesji do instancji obiektu

Sesja zakończy?

Jeśli użytkownik nie żąda lub odświeżyć stronę w terminie określonym we wniosku, sesja się skończy. Domyślną wartością jest 20 minut.

Jeśli chcesz ustawić limit czasu na krótszy lub dłuższy niż wartość domyślna, można użyć właściwościTimeout.

Poniższy przykład ustawia limit czasu 5 minut:

<%
Session.Timeout=5
%>

Aby natychmiast zakończyć sesję, należy użyć metodyAbandon:

<%
Session.Abandon
%>

Uwaga: W przypadku korzystania z sesji Głównym problemem jest to, że kiedy skończy.Nie wiemy Ostatnie żądanie użytkownika jest ostatnia prośba. W związku z tym, że nie wiemy sesję make "przeżyć" długo. Dla darmowa sesja czekać zbyt długo będzie wyczerpanie zasobów serwera. Jednakże, jeśli sesja jest usuwana przedwcześnie, użytkownik musiałby uruchomić w kółko, to dlatego, że serwer usunął wszystkie informacje. Znalezienie odpowiedniego limit czasu może być trudne!

wskazówkaWskazówka: W zmiennej sesji przechowywać jedynie niewielką ilość danych!


Zmienne sesji do przechowywania i pobierania

Celem sesji jest największą zaletą jest zmienna, w której przechowywać przez kolejne strony, aby przeczytać, jego zakres zastosowań jest bardzo szeroki.

Poniższe przykłady sesji "Donald Duck" przypisany do zmiennej o nazwienazwa użytkownika,a "50" jest przypisana do zmiennej o nazwiewiekuSesji:

<%
Session("username")="Donald Duck"
Session("age")=50
%>

Gdy wartość jest przechowywana w zmiennej sesji, może to być aplikacje ASP użycie dowolnego strony:

Welcome <%Response.Write(Session("username"))%>

Wyniki powyżej tej linii powrotów kod: "Welcome Kaczora Donalda".

Można również zapisać parametry użytkownika w obiekcie Session, a następnie uzyskać dostęp do tych parametrów w celu określenia, jakie strony są zwracane użytkownikowi.

Poniższy przykład stanowi, że jeżeli użytkownik wykorzystuje ekran o niskiej rozdzielczości, wersja tekstowa strony są zwracane:

<%If Session("screenres")="low" Then%>
This is the text version of the page
<%Else%>
This is the multimedia version of the page
<%End If%>


Usuń zmienne sesyjne

Zawartość Kolekcja zawiera wszystkie zmienne sesji.

Zmienne sesji może być usunięty metodą Usuń.

W poniższym przykładzie, jeśli "wiek" wartości zmiennej sesji jest mniejsza niż 18, a następnie wyjąć sesji zmienną "sprzedaż":

<%
If Session.Contents("age")<18 then
Session.Contents.Remove("sale")
End If
%>

Aby usunąć wszystkie zmiennej sesji, należy użyć metody removeAll:

<%
Session.Contents.RemoveAll()
%>


Kolekcja Zawartość traversal

Zawartość Kolekcja zawiera wszystkie zmienne sesji. Możesz przechodzić kolekcję ogólna, aby sprawdzić, które przechowuje zmienne:

<%
Session("username")="Donald Duck"
Session("age")=50

dim i
For Each i in Session.Contents
Response.Write(i & "<br>")
Next
%>

wyniki:

username
age

Jeśli nie znać liczbę elementów w kolekcji treści, można użyć właściwości Count:

<%
dim i
dim j
j=Session.Contents.Count
Response.Write("Session variables: " & j)
For i=1 to j
Response.Write(Session.Contents(i) & "<br>")
Next
%>

wyniki:

Session variables: 2
Donald Duck
50


Kolekcja przechodzenie StaticObjects

Możesz przechodzić kolekcję StaticObjects, aby zobaczyć wartości wszystkich obiektów przechowywanych w obiekcie Session:

<%
dim i
For Each i in Session.StaticObjects
Response.Write(i & "<br>")
Next
%>