USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Dicas

  ASP - Active Server Page    (Miscelâneas)

Título da Dica:  Quantas pessoas estão no seu site neste momento?
Postada em 23/10/2003 por ^HEAVY-METAL^            
Pessoalmente acho este exemplo bastante acessível, e mesmo que nunca tenha usado o ficheiro global.asa, não se preocupe. Se não tiver este ficheiro ponha o código referente ao mesmo num ficheiro global.asa na root do site que estiver a programar ( ex. www.osite.com/global.asa ). Tudo o que vamos precisar é de manter uma variável actualizada controlando os inícios e as perdas de sessão que vão acontecendo no site. quando uma sessão começa vamos incrementar a variável, quando uma sessão expira, decrementamos a mesma.


Explicando as variáveis Application :
      As variáveis application trabalham semelhantemente como as variáveis session excepto no facto de os valores das variáveis Application serem os mesmos para todos os utilizadores que tiverem a aceder ao site, enquanto as variáveis Session diferenciarem de utilizador para utilizador ( de sessão para sessão ). Uma instancia de cada sessão é criada para cada utilizador. Existe apenas uma instância para todas as variáveis Application quandoo servidor começa a laborar. Espero que com o exemplo fique a perceber melhor.
  
  

Ficheiro: Global.asa

<SCRIPT LANGUAGE="VBScript" RUNAT="Server">
Sub Application_OnStart
        ' Sub Application_OnStart é a função que dispara
        ' cada vez que o servidor internet começa.

        ' Aqui vamos validar o tempo que ahcamos que o utilizador
     ' está válido on-line.  (se não houver actividade por parte
     ' do mesmo em x minutos, é feito um log off, apagando-se
     ' a sua instância da variável de sessão)
        Session.Timeout = 3

        ' O método .Lock tranca a variável Applicationpara que possamos
     ' actualizar a mesma.  Se não a trancarmos a mesma não será
     ' alterada, neste caso a variável "QuantosAgora"
     Application.Lock

        ' Vamos começar a veriável em 0
        Application("QuantosAgora") = 0

        ' Destrancamos agora
        Application.UnLock
End Sub
Sub Session_OnStart
        ' Sub Session_OnStart é a função que dispara
        ' por cada vez que um utilizador entra no site

        ' Aqui vamos então incrementar a nossa variável
           Application.Lock
     Application("QuantosAgora") = Application("QuantosAgora") + 1
     Application.UnLock
End Sub
Sub Session_OnEnd
        ' Sub Session_OnEnd é a função que desperta
        ' por cada vez que um utilizador sai, é definido n
     ' minutos depois do utilizador sair ou estiver inactivo.
        ' Estes n minutos são definidos por Session.Timeout em
     ' Sub Application_OnStart

        ' então,quanto um utilizador é contado como menos um
        ' acesso simultâneo e por isso vamos decrementar a variável
     ' "QuantosAgora"
     Application.Lock
     Application("QuantosAgora") = Application("QuantosAgora") - 1
     Application.UnLock
End Sub
</SCRIPT>


Ficheiro: main.asp
Depois de muita pesquisa :-),... fz este código que mostra o numero de utilizadores do momento, pode ser um qualquer ficheiro ASP em qualquer zona do site...

<%
   response.write "Estão agora " & Application("QuantosAgora") & " utilizadores."
%>

T+,
 


CyberWEB Network Ltda.    © Copyright 2000-2024   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página