Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

lucianoavm00

Encerrar sessão do usuário

Recommended Posts

:huh: bom dia, tenho um site no qual uso um sistema de login baseado na sessão, quando o usuário clika em sair aciono o método Session.Abandon(), para matar a sua sessão.

:wacko: O problema é que ao iniciar a sessão coloquei uma variável de aplicação no global.asa para ser incrementada, para ter estatística de quantos usuários estão on-line, ao encerrar a sessão decremento esta variável.

O número de usuários desta variável não está diminuindo conforme os usuários efetuam logoff.

É necessário que o usuário saia do site ou feche o browser?

Agradeço qualquer ajuda. http://forum.imasters.com.br/public/style_emoticons/default/blush.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

essa parada de sessão com o global.asa realmente eh essa "putaria"..hauahu.... velho... existe outros meios, via BD... mais complexas de se fazer, mas tb mais confiável....sobre ele naum excluir a sessão... na verdade eh o seguinte... qdo você da um session.abandon... na verdade ele naum fecha a sessão.. e sim.. limpa todas as variaveis referente a sessão atual (pelo menos isso q deduzi)... uma prova disso... eh você ir numa pagina... e mandar exibir o sessionid... depois em outra pagina, manda ele dar um session.abandon... depois vai em outra, e manda ele exibir o sessionid novamente.... ele exibe o mesmo!!!! se ele realmente fechasse a sessão, você teria um session direfernte....bom.. enrolação e naum falei o q queria... concluindo....ele soh vai contabilizar q não tem mais users on-line qdo o tempo de expiração da SESSION bater e o user não estiver mais online... mesmo q ele ja tenha fechado browser ou dado um abandon na session...bye ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

essa parada de sessão com o global.asa realmente eh essa "putaria"..hauahu....

 

velho... existe outros meios, via BD... mais complexas de se fazer, mas tb mais confiável....

 

sobre ele naum excluir a sessão... na verdade eh o seguinte... qdo você da um session.abandon... na verdade ele naum fecha a sessão.. e sim.. limpa todas as variaveis referente a sessão atual (pelo menos isso q deduzi)...

 

uma prova disso... eh você ir numa pagina... e mandar exibir o sessionid... depois em outra pagina, manda ele dar um session.abandon... depois vai em outra, e manda ele exibir o sessionid novamente.... ele exibe o mesmo!!!! se ele realmente fechasse a sessão, você teria um session direfernte....

 

bom.. enrolação e naum falei o q queria... concluindo....

ele soh vai contabilizar q não tem mais users on-line qdo o tempo de expiração da SESSION bater e o user não estiver mais online... mesmo q ele ja tenha fechado browser ou dado um abandon na session...

 

bye

;)

Não entendi o que você quis dizer com "existe outros meios, via BD... mais complexas de se fazer, mas tb mais confiável".

Como assim? :huh:

Obrigado pela dica. ^_^

Compartilhar este post


Link para o post
Compartilhar em outros sites

seria fazer estes teste via bd, ataulizando a hora do ultimo acesso, a cada pagina e fazendo com que o usuario seja considerado on line desde que seu ultimo acesso esteja num tempo maximo estipulado por você, tipo 5 ou 10 minutos

Compartilhar este post


Link para o post
Compartilhar em outros sites

seria fazer estes teste via bd, ataulizando a hora do ultimo acesso, a cada pagina e fazendo com que o usuario seja considerado on line desde que seu ultimo acesso esteja num tempo maximo estipulado por você, tipo 5 ou 10 minutos

http://forum.imasters.com.br/public/style_emoticons/default/joia.gif soh acrescentando... e qdo ele pedir o session.abandon.. você executa uma função (uma sql) q jah desativa seus status tb pra offline..

Compartilhar este post


Link para o post
Compartilhar em outros sites

http://forum.imasters.com.br/public/style_emoticons/default/blush.gif Desculpe-me pela insistência, mas acho que sem o contexto não dá para entender o que quero, achei que a dica do tempo não vai me valer muito.

:huh: É o seguinte, na minha página tem um frame que contém o form de login.

quando o cara efetua login, envio os dados para outra página que os valida no bd.

Se o login e a senha estiverem corretos exibe a página, senão redireciona para o form de login.

:blink: A questão é o seguinte: se o cara logar e der um refresh na página por ser frame o frame contendo o form é carregado, portanto coloquei uma condição no frame do form para se caso o cara estiver logado redirecionar para o outro frame com opções.

Quando o cara faz logoff, redireciono ele para o form de login, e se caso ele der um refresh na página a sessão tem que ter sido encerrada para que não caia na página de opções novamente.

http://forum.imasters.com.br/public/style_emoticons/default/blush.gif Adicionalmente o número de usuários on-line tem que ser decrecido, mas não poderia ser quando o cara faz logoff, pois ele ainda pode estar em outras áreas do site.

:unsure: O que ocorre é que mesmo fechando o bowser o número de usuários não é decrescido, parece que a sessão não encerra.

Acho que tenho idéia do que posso fazer, mas ainda não sei como encerrar a sessão do cara ao fechar o browser.

Desculpe-me pela insistência mas estou buscando a melhor solução (a mais segura).

Compartilhar este post


Link para o post
Compartilhar em outros sites

isto que estamos falando usa bdtipo cria um campo no seu bd com a data/hora do ultimo acesso do caraatualiza este campo em cada page que ele visitare para saber quem está online verifica a diferença do tempo atual para a data do ultimo acesso

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.