ASP » Numero de usuarios activos en ASP
La idea de este ejemplo es la de poder mostrar el número de usuarios activos que existen dentro de una Web simultáneamente. Para poder llevar a cabo este ejemplo deberemos de utilizar el archivo global.asa y una variable de aplicación que lleve la cuenta de los usuarios activos.
Hay que recordar que el archivo global.asa se ejecuta cada vez que un usuario abre o cierra una sesión o bien cuando abrimos o cerramos la aplicación servidor. Cada vez que el usuario abra una sesión en nuestra Web se ejecutará el procedimiento Session_OnStart, en el cual incrementaremos la variable de aplicación. Cuando un usuario cierra la sesión se ejecuta el procedimiento Session_OnEnd donde decrementaremos la variable de aplicación.
<SCRIPT LANGUAGE="VBScript" RUNAT="Server"> Sub Session_OnStart ... End Sub Sub Session_OnEnd ... End Sub </SCRIPT>
Para acceder a una variable de aplicación utilizamos la variable application, la cual recibirá como parámetro la variable. En este caso la variable será "usuariosActivos".
<SCRIPT LANGUAGE="VBScript" RUNAT="Server"> Sub Session_OnStart application.Lock application("usuariosActivos") = application("usuariosActivos")+1 application.UnLock End Sub Sub Session_OnEnd application.Lock application("usuariosActivos") = application("usuariosActivos")-1 application.UnLock End Sub </SCRIPT>
Cuando utilicemos la variable de aplicación deberemos de realizar un bloqueo sobre la misma con application.lock y application.unlock, ya que dicha variable esta disponible para todos los usuarios y podríamos tener problemas de integridad.
Para que la variable de aplicación tenga un valor inicial, este se le daremos en el archivo global.asa, en el procedimiento Application_OnStart. El procedimiento Application_OnStart es el que se ejecuta cuando se arranca la aplicación por primera vez.
<SCRIPT LANGUAGE="VBScript" RUNAT="Server"> Sub Application_OnStart application("usuariosActivos") = 0 End Sub </SCRIPT>
A la hora de mostrar el valor de la variable de aplicación, simplemente necesitaremos un Response.Write().
![]() Descargar el código |
![]() Error en el código |
![]() Foro sobre ASP |
Artículos relacionados:



