
22/04/2002, 23:01
|
 | Colaborador | | Fecha de Ingreso: febrero-2001 Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 24 años, 4 meses Puntos: 535 | |
Re: Quien Tiene pasiencia para expplicarme sesiones Comencemos justamente por el comienzo:
Es conocido que el protocolo http no mantiene una memoria. Esto quiere decir que el servidor no recuerda qué es lo que hicimos segundos atrás. Para solucionar estos problemas (al menos en el ambiente ASP) se crearon dos tipos de variables: variables de sesión y de aplicación
Variables session:
Se utilizan para guardar información necesaria para una (y solo una) sesión de usuario y estas variables, almacenadas en el objeto session, no se descartan cuando el usuario ‘salta’ entre las páginas del sitio. Persisten durante toda la sesión del usuario en él y son exclusivas de ese usuario (no se comparten entre ellos, para ello está la variable APLICATION... pero esa es otra historia)
La session dura (por default) 20 minutos por cada usuario. Esto significa que pasados los 20 minutos sin existir actividad del usuario (no hizo clic en ninguna página de nuestro sitio o si, pero sobre enlaces externos; por ejemplo) la session caduca automáticamente.
Algo importante es aclarar que el estado de la sesión sólo se mantiene para exploradores que aceptan cookies o las tengan habilitadas (al menos para uso momentáneo... sin guardar en disco).
Para crear una sesión:
<% Session(“Un_Nombre”) = “Un valor” %>
Para comprobar el valor de una sesión (en otra página distinta a la anterior!):
<%
If Session(“Un_Nombre”) = “Un valor” then
Response.Write “la sesión coincide, por lo tanto es correcto”
Else
Response.Write “No son iguales...”
End if
%>
Para destruir adrede una sesión (antes que ocurra el time-out default de 20 minutos):
<% Session.Abandon %>
Para especificar un time-out distinto de los 20 minutos del default:
<% Session.TimeOut = 60 ‘se mide en minutos %>
Luego podés hacer cosas muy interesantes con el global.asa y sus eventos “Session on_start” y “Session on_end”, pero eso va mas adelante (primero familiarizate con las sesiones fuera del global.asa)
Una breve explicación.
saludos
diego |