ASP Session Object


ASP Session Object

Un objet Session d'information sur les magasins, ou modifier les paramètres pour une session utilisateur.

L'objet Session

Lorsque vous travaillez avec une application sur votre ordinateur, vous l'ouvrez, faire quelques modifications, puis vous la fermez. Cela ressemble beaucoup à une session. L'ordinateur sait qui vous êtes. Il sait quand vous ouvrez l'application et lorsque vous le fermez. Toutefois, sur l'Internet il ya un problème: le serveur web ne sait pas qui vous êtes et ce que vous faites, parce que l'adresse HTTP ne conservent pas l'état.
ASP permet de résoudre ce problème en créant un cookie unique pour chaque utilisateur. Le cookie est envoyé à l'ordinateur de l'utilisateur et il contient des informations qui identifie l'utilisateur.Cette interface est appelée l'objet Session.
L'objet Session d'information sur les magasins, ou modifier les paramètres pour une session utilisateur.
Les variables stockées dans un objet Session détenir des informations sur un seul utilisateur, et sont disponibles pour toutes les pages en une seule application. Commun de l'information stockée dans les variables de session sont le nom, id, et les préférences. Le serveur crée un objet de la nouvelle session pour chaque nouvel utilisateur, et détruit l'objet session lorsque la session expire.

Quand est-ce une session sur Démarrer?

Une session démarre lorsque:
  • Un nouvel utilisateur demande un fichier ASP, et le fichier Global.asa comprend une procédure Session_OnStart
  • Une valeur est stockée dans une variable de session
  • Un utilisateur demande un fichier ASP, et le fichier Global.asa utilise la balise object pour instancier un objet avec une portée de session

Quand une fin de la session?

Une session se termine si un utilisateur n'a pas demandé ou actualisé une page dans l'application pour une période déterminée. Par défaut, c'est 20 minutes.
Si vous souhaitez définir un intervalle de temporisation qui est plus courte ou plus longue que la valeur par défaut, utilisez le délai d'attente de propriété.
L'exemple ci-dessous définit un intervalle de délai d'attente de 5 minutes:
<%
Session.Timeout=5
%>
Utilisez le Abandon méthode pour mettre fin à une session immédiatement:
<%
Session.Abandon
%>
Remarque: Le principal problème avec les sessions, c'est quand ils doivent mettre fin. Nous ne savons pas si la dernière requête de l'utilisateur était la dernière ou non. Donc, nous ne savons pas combien de temps nous devons garder la session "en vie". Attendre trop longtemps pour une session inactive utilise des ressources sur le serveur, mais si la session est supprimé trop tôt, l'utilisateur doit tout recommencer à zéro parce que le serveur a supprimé toutes les informations.Trouver l'intervalle de temporisation droit peut être difficile!
Pointe Astuce: Seul stocker de petites quantités de données dans des variables de session!

Stocker et récupérer des variables de session

La chose la plus importante sur l'objet Session, c'est que vous pouvez stocker des variables en elle.
L'exemple ci-dessous créera la variable de session nom d'utilisateur pour "Donald Duck" et la variable de session l'âge de "50":
<%
Session("username")="Donald Duck"
Session("age")=50
%>
Lorsque la valeur est stockée dans une variable de session ne peut être atteint à partir de n'importe quelle page de l'application ASP:
Welcome <%Response.Write(Session("username"))%>
La ligne ci-dessus renvoie: "Duck Donald Bienvenue".
Vous pouvez également stocker des préférences de l'utilisateur dans l'objet Session, puis accéder à cette préférence pour choisir quelle page pour retourner à l'utilisateur.
L'exemple ci-dessous précise une version en texte seul de la page si l'utilisateur a une résolution d'écran faible:
<%If Session("screenres")="low" Then%>
  This is the text version of the page
<%Else%>
  This is the multimedia version of the page
<%End If%>


Retirer des variables de session

La collection Contents contient toutes les variables de session.
Il est possible de supprimer une variable de session avec la méthode Remove.
L'exemple ci-dessous supprime la variable de session "vente" si la valeur de la variable de session "âge" est inférieure à 18:
<%
If Session.Contents("age")<18 then
  Session.Contents.Remove("sale")
End If
%>
Pour supprimer toutes les variables dans une session, utilisez la méthode RemoveAll:
<%
Session.Contents.RemoveAll()
%>


Boucle dans la collection matières

La collection Contents contient toutes les variables de session. Vous pouvez parcourir la collection Contents, pour voir ce qui est stocké dans l':
<%
Session("username")="Donald Duck"
Session("age")=50

dim i
For Each i in Session.Contents
  Response.Write(i & "<br />")
Next
%>
Résultat:
username
age
Si vous ne connaissez pas le nombre d'éléments dans la collection Contents, vous pouvez utiliser la propriété 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
%>
Résultat:
Session variables: 2
Donald Duck
50


Boucle dans la collection StaticObjects

Vous pouvez parcourir la collection StaticObjects, pour voir les valeurs de tous les objets stockés dans l'objet Session:
<%
dim i
For Each i in Session.StaticObjects
  Response.Write(i & "<br />")
Next
%>

0 commentaires:

Post a Comment

HELLO VISITORS THANKS FOR YOUR VISIT AND COMMENT