feed twitter facebook LinkedIn facebook

ASP » Guardar información del usuario en la sesión con ASP

Octubre 25, 2009 por Víctor Cuervo . 4694 visitas 1 Comentario Imprimir Imprimir

El siguiente ejemplo nos muestra que tenemos que hacer para guardar información del usuario en una variable de sesión con ASP. Esto nos va a ser muy útil ya que podremos disponer de dicha información mientras el usuario esté conectado a nuestra web.

En este punto hay que aclaran un poco el concepto sesión. Y es, ¿qué consideramos como estar conectado a nuestra web?. Pues a un cliente que se identifique de forma unívoca mediante todas sus peticiones. Por ejemplo, en el caso de los navegadores, mantendremos activa la sesión siempre y cuando naveguemos con la misma pantalla del navegador o cuando abramos una nueva ventana a partir de la ventana anterior. Si ejecutamos de nuevo nuestro navegador, este al ser un proceso nuevo, tiene un identificador nuevo, y por lo tanto crea una nueva sesión en el servidor.

Una vez que tenemos estos conceptos básicos para poner un dato en sesión utilizamos el objeto Session de la siguiente forma:

  1. Session("usuario") = "Víctor"

Este valor guardado durante la vida de la sesión se podrá recuperar de la siguiente forma:

  1. Session("usuario")

y lo podremos volcar por pantalla si ponemos

  1. Response.Write (Session("usuario"))

Una cosa que tenemos que tener en cuenta es el tiempo de vida de la sesión. Porque, claro, si el usuario se fuese a tomar un café, a dar un paseo y volviese al ordenador tras una hora, no sería de recibo seguir manteniéndole la sesión. Y es que, al fin y al cabo, estos datos ocupan lugar en la memoria del servidor. Además, si guardamos datos sensibles, estos, ante la ausencia del usuario, podrían ser utilizamos maliciosamente.

Aunque el tiempo de la sesión viene configurado en el servidor, podemos modificar el tiempo de vida de la sesión mediante la propiedad TimeOut de la siguiente forma:

  1. Session.TimeOut = 10 '10 minutos

Y podríamos forzar el abandono de sesión del usuario mediante la función Abandon()

  1. Session.Abandon()

Ahora codificaremos un pequeño ejemplo de tres página. En la primera de ellas crearemos los datos asociados al usuario, el nombre y el número de páginas vistas por ese usuario (otro ejemplo de utilización de los datos de sesión)

  1. <%
  2. Session("usuario") = "Victor Cuervo"
  3. Session("paginas") = Session("paginas") + 1
  4.  
  5. Response.Write("Usuario:" + Session("usuario") + "<br>")
  6. Response.Write("Paginas vistas:" + CStr(Session("paginas")))
  7. %>

En la segunda simularemos todas las páginas intermedias de nuestra web. Así que solo le incrementaremos la información de páginas vistas

  1. <%
  2. Session("paginas") = Session("paginas") + 1
  3.  
  4. Response.Write("Usuario:" + Session("usuario") + "<br>")
  5. Response.Write("Paginas vistas:" + CStr(Session("paginas")))
  6. %>

Y en la tercera y última permitiremos que el usuario abandone y cierre la sesión.

  1. <%
  2. Response.Write("Usuario:" + Session("usuario") + "<br>")
  3. Response.Write("Paginas vistas:" + CStr(Session("paginas")))
  4.  
  5. Session.Abandon()
  6. %>
Descargar el Codigo
Descargar el código
Error en el Codigo
Error en el código
Foro sobre ASP
Foro sobre ASP
tags: , , , , ,

Artículos relacionados:

1 comentario »

Redifusión RSS de los comentarios de la entrada. TrackBack URI

  1. Linea de Codigo » Volcar el contenido de la sesión en ASP
    Enero 20, 2010 #

    [...] La forma que ASP nos ofrece para recuperar y poner información es el objeto Session. Si en este punto no sabemos como hacer esto es útil leerse el articulo Guardar información en la sesión del usuario. [...]

Deje un comentario

XHTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

*