Ir para conteúdo

POWERED BY:

Arquivado

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

Full Burn

Como impedir acesso simultaneo?

Recommended Posts

Boa noite a todos,Estou desenvolvendo um sistema onde o mesmo usuário não pode se logar em duas máquinas ao mesmo tempo.Programei pra setar um campo do cadastro do usuário pra indicar que ele está logado, mas preciso voltar o campo quando o usuário sai.Porem preciso que isso aconteça tb qdo ele fechar o navegador. A unica forma que encontrei de fzr isso é chamar outra janela pelo evento onunload da pagina. Mas se o usuario estiver usando anti-popup, a janela nao e aberta e o sistema naio atualiza o bd.como resolver?agradeco qqer ajuda.[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Utiliza os recursos do objeto Session para executar a função que altera o registro no banco quando a sessão do usuário for finalizada.-----------------------------------------------------Sub Session_OnEnd EXECUTA_FUNÇÃO_DE_LOGOUTEnd Sub-----------------------------------------------------

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vagner,Boa noite,O problema eh q se o usuário fechar a janela do navegador, a Session_OnEnd não é executada.Ou seja, se ele fechar a janela, o sistema continuará constando como logado.Preciso de outra forma de fazer.Alguma idéia?Obrigado.[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Coloca a session com tempo limite para expirar!Ou chama uma página ASP via AJAX no evento ONUNLOAD, para executar a função que atualiza o registro na base!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vamos lá, a idéia é utilizar multiplas formas de "deslogar".

 

Utilize o Session_OnEnd do Global.asa para deslogar ao termino da sessão (que sempre ocorre, mesmo quando o usuário sai do site), isso evita que o usuário permaneça logado caso o PC reinicie ou caso o browser não seja fechado corretamente, além disso utilize AJAX para deslogar em caso de saida de sua página pelo browser, isso evita anti-PopUps.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Isso ae Salgado, valeu por complementar a idéia, acho que eu não deixei bem claro as vantagens desses métodos!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vagner e Salgado,Obrigado pelas respostas.O tempo para a Session não acredito que seja uma boa opção, pois pode acontecer de o usuário fechar o navegador e já querer logar novamente e não iria conseguir.Acho que talvez a idéia do AJAX seja a melhor opção, mas meus conhecimentos no assunto são bem básicos.Como seria feita essa chamada?Agradeço se puderem dar mais essa ajuda.[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não despreze o Session_OnEnd pois vale para os casos que citei, se não for por ele seu usuário vai depender de alteração de Status externa (edição no bd "na marra").

 

Com relação ao AJAX, dê uma olhada no Laboratório de Scrpts, existe uma base lá para iniciar seus estudos. Não é nada mostruoso e conforme forem surgindo as duvidas vai postando.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Salgado,Bom dia,Fiz uma busca por AJAX no Laboratório de Scripts e foram encontrados somente 4 posts e o único dos 4 que aparentemente teria o que preciso teve o script removido.Tem algum termo específico que eu possa procurar?Obrigado mais uma vez.[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Alexandre,

 

Dê uma olhada nesse tópico, no trecho "formulario.asp" você encontra a parte "Ajax" do sistema. Com ela é só ir adaptando, em casos de dúvida poderemos ir montando algo e depois disponibilizamos para todos, OK?

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.