Ir para conteúdo
Fórum Script Brasil
  • 0

Session.sessionid (finalizado)


damon_rn

Pergunta

Bom dia galera,

Montei em um site um sisteminha básico para verificar os usuários online usando o SessionID. Em parte está funcionando. O erro é quando a pessoa fecha o navegador sem clicar no botão logoff.

Montei dentro do Global.asa o Sub Session_OnStar Abrindo a conexao com o BD e no Sub Session_OnEnd em o comando de UpDate para gravar a saida do usuário.

O código do meu Global.asa é o seguinte:

<script language=VBScript RUNAT=Server>
Sub Session_OnStart

'------------------------------------------------------
    Application("ConGString") = "DRIVER=SQL Server; SERVER=teste; UID=funcionarios; PWD=navegue; DATABASE=Interno;"
'------------------------------------------------------

End Sub


Sub Session_OnEnd

'------------------------------------------------------------------------------
set ConG = Server.CreateObject ("ADODB.Connection") 
ConG.Open Application("ConGString") 

query = "UPDATE Usuario SET Status = 'OffLine' WHERE SessionID = '"& Session.SessionID &"' and Usuario = '"& Session("member") &"'"


ConG.Execute (query) 
ConG.Close 
set ConG = Nothing

'------------------------------------------------------------------------------

End Sub

</script>

Se alguém puder me ajudar ou explicar o porq a Session quando interrompida (ao fechar o browser) não é atualizada no BD.

Antecipadamente agradeço.

Damon

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0

um palpite: (não sei mas, pra mim tem lógina biggrin.gif)

como o próprio nome já diz: "Sub Session_OnEnd"

então depois de, ela ter-se finalizada, destruída, eliminada (a sessão) não tem mais como usar não é?

query = "UPDATE ... SessionID = '"& Session.SessionID &"'..."

Agora não sei como você vai fazer pra resolver biggrin.gif e se esse é realmente o problema !!

Link para o comentário
Compartilhar em outros sites

  • 0

Bom gente.. agradeço a força.

Fiz mais uns testes e verifiquei que realmente estava finalizando a sessão. O meu problema, foi que eu não estava esperando o tempo suficiente para ver o resultado.

Quando fechava-se o browser sem clicar no botão sair, o tempo de navegação era finalizado com 20 minutos. Eu estava pensando que continuaria aberto. Na tabela tem dois campos, um para gravar a Data/hora de inicio e outro para gravar a data/hora de saida.

+ uma vez, valeu galera.

Damon

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.


  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,8k
×
×
  • Criar Novo...