Latest web development tutorials

ASP oggetto di sessione

oggetto Session è utilizzato per memorizzare le informazioni relative a una sessione utente (sessione), o modificare l'impostazione sessione utente (sessione).


oggetto Session

Quando si utilizza un'applicazione sul computer, si apre, fai alcune modifiche, e quindi chiuderlo. E 'come una conversazione (sessione). Il computer sa chi sei. E 'chiaro che si apre e chiude le applicazioni quando. Tuttavia, su Internet, si pone la questione: non poteva tenere perché l'indirizzo HTTP, il server Web non sa chi sei e quello che hai fatto.

ASP creando un cookie unico per ciascun utente per risolvere questo problema. cookie è trasferito sul computer dell'utente, che contiene informazioni dell'utente identificabili. Questa interfaccia è chiamato l'oggetto Session.

oggetto Session è utilizzato per memorizzare le informazioni relative a una sessione utente (sessione), o modificare l'impostazione sessione utente (sessione).

memorizza variabili informazioni di un singolo utente vengono archiviati nell'oggetto Session, e sono disponibili per applicazioni in tutte le pagine. Memorizzato in una variabile di sessione informazione al pubblico è di solito il nome, l'ID e parametri. Il server crea una nuova sessione per ogni nuovo utente, e di ritirare fuori dell'oggetto Session quando la sessione è scaduto.


Sessione Quando iniziare?

Sessione dalle ore:

  • Un nuovo utente richiede un file ASP, ed i riferimenti file Global.asa Session_OnStart subroutine
  • Un valore memorizzato nella variabile di sessione
  • Un utente richiede un file ASP, e il Global.asa utilizzare tag <object> dal campo di applicazione della sessione creare un'istanza di un oggetto

Sessione finirà?

Se l'utente non richiede o aggiornare la pagina entro il tempo indicato nella domanda, la sessione si concluderà. Il valore di default è di 20 minuti.

Se si desidera impostare l'intervallo di timeout per un breve o più lungo rispetto al valore di default, è possibile utilizzare la proprietàTimeout.

L'esempio seguente imposta un intervallo di timeout di 5 minuti:

<%
Session.Timeout=5
%>

Per terminare la sessione immediatamente, si prega di utilizzare il metodoAbandon:

<%
Session.Abandon
%>

Nota: Quando si utilizza la sessione Il problema principale è che quando finiscono.Non sappiamo più recente richiesta dell'utente è l'ultima richiesta. Pertanto, non sappiamo la sessione make "sopravvivere" a lungo. Per una sessione gratuita di aspettare troppo a lungo sarà a corto di risorse del server. Tuttavia, se la sessione viene rimosso prematuramente, l'utente avrebbe dovuto iniziare più e più volte, questo è perché il server ha cancellato tutte le informazioni. Trovare il giusto intervallo di timeout può essere difficile!

puntaSuggerimento: nella variabile di sessione per memorizzare solo una piccola quantità di dati!


Le variabili di sessione per memorizzare e recuperare

oggetto di sessione è il più grande vantaggio è la variabile in cui memorizzare le pagine successive per leggere, il suo campo di applicazione è molto ampia.

I seguenti esempi della sessione "Paperino" assegnato alla variabile denominatanome utente,e "50" viene assegnato a una variabile denominataetàdi sessione:

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

Quando il valore viene memorizzato nella variabile di sessione, può essere applicazioni ASP per utilizzare qualsiasi pagina:

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

I risultati di sopra di questa linea di restituisce il codice: "Benvenuti Paperino".

È anche possibile memorizzare i parametri utente nell'oggetto di sessione e quindi accedere a questi parametri per determinare ciò che la pagina viene restituito all'utente.

L'esempio che segue prevede che se l'utente utilizza un display a bassa risoluzione, viene restituita la versione solo testo della pagina:

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


Rimuovere variabili di sessione

Contenuto collezione contiene tutte le variabili di sessione.

Le variabili di sessione possono essere rimossi con il metodo Remove.

Nell'esempio che segue, se l ' "età" del valore della variabile di sessione è inferiore a 18, quindi rimuovere la sessione variabile "vendita":

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

Per rimuovere tutte le variabili di sessione, utilizzare metodi RemoveAll:

<%
Session.Contents.RemoveAll()
%>


raccolta Traversal Sommario

Contenuto collezione contiene tutte le variabili di sessione. È possibile attraversare la collezione Contents, per vedere che memorizza le variabili:

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

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

risultati:

username
age

Se non si conosce il numero di elementi della collezione Contents, è possibile utilizzare la proprietà 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
%>

risultati:

Session variables: 2
Donald Duck
50


raccolta Traversal StaticObjects

È possibile attraversare la raccolta StaticObjects, per vedere i valori di tutti gli oggetti memorizzati nell'oggetto Session:

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