Morpheusweb.it - Risorse per webmaster: script, ASP.NET, C#, Visual Basic .Net, tutorial, asp, javascript, css, php, html, java, ADO, VBScript, forms, frames, Active Server Pages, Dynamic HTML, database, gratis per webmaster e webdesigner

Come utilizzare le sessioni ASP.

Sessioni


La sessione è utilizzata per memorizzare informazioni sulla sessione utente. Le variabili memorizzate nell'oggetto Session tengono informazioni su un singolo utente, e sono disponibili a tutte le pagine dell'applicazione.

Sessioni

HTTP è un protocollo stateless,senza stato, non mantiene cioè informazioni su ciò che avviene quando navighiamo.
Se vogliamo creare delle pagine che "ricordino" delle informazione, dobbiamo memorizzarle da qualche parte. Un modo per farlo è utilizzare le sessioni.
Le sessioni utilizzano i cookie per memorizzare le informazioni, ma lo fanno in modo trasparente al programmatore.
L'oggetto Session è utilizzato per memorizzare o cambiare le informazioni circa la sessione di un singolo utente. Le variabili memorizzate nell'oggetto Session hanno delle informazioni sul singolo utente e sono disponibili per tutte le pagine dell'applicazione.

Timeout della sessione

Una sessione termina se un utente non ha richiesto pagine o fatto il refresh in una pagina dell'applicazione per un determinato lasso di tempo. Di default questo tempo è 20 minuti. Se si vuole cambiare l'intervallo di dafault, occorre impostare la proprità Timeout.

<%
Session.Timeout=60
%>


Per terminare una sessione immediatamente si può utilizzate il metodo Abandon:

<%
Session.Abandon
%>


Scrivere e leggere le variabili di sessione

L'esempio in basso spiega come memorizzare delle variabili di sessione. Imposteremo la variabile di sessione username a "Donald Duck" e la variabile age a "50":

<%
Session("username")="morphX"
Session("password")="SJj8saD"
%>

Queste due variabili possono essere recuperate in qualsiasi parte dell'applicazione:

<%
username = Session("username")
password = Session("password")
%>


Eliminare le variabili di sessione

La collezione Contents contiene tutte le variabili di sessione. Supponiamo ad esempio di voler fare un logout e pulire la sessione

<%
Sub logout()
    Session("username") = ""
    Session("password") = ""
End Sub
%>

Per rimuovere tutte le variabili di sessione si può utilizzare il metodo RemoveAll:

<%
Sub logout()
    Session.Contents.RemoveAll()
End Sub
%>


Potremmo anche utilizzare il metodo session.abandon per fare il logout.

Ciclare il contenuto della collezione Contents


La collezione Contents contiene tutte le variabili di sessione. Si può ciclarne il contenuto per vedere cosa c'è memorizzato:

<%
Session("username")="morphX"
Session("password")="SJj8saD"
dim counter
For Each counter in Session.Contents
    Response.Write(counter & "<br />")
Next
%>

Risultato:

Se non conosciamo il numero di elementi nella collection, possiamo utilizzare la proprietà Count:

<%
dim prop
Response.Write("Variabili di sessione: " & Session.Contents.Count)
For prop=1 toSession.Contents.Count
    Response.Write(Session.Contents(prop) & "<br />")
Next
%>




Stampa la pagina


 

Inizio pagina

risorse per webmaster