Login evitar acessos multiplos a mesma conta em php e mysql  XML
Índice dos Fóruns » Desenvolvimento Web
Autor Mensagem
ArturFigueiredo
HelloWorld

Membro desde: 06/02/2012 17:02:47
Mensagens: 12
Localização: Swiss
Offline

Oi,
Gostaria de saber se alguem tem alguma ideia de como faço para evitar q varias pessoas acessem a mesma conta ao mesmo tempo.Eu ate pensei numa solucao como : colocar na tabela do mysql quando o usuario loga-se , por exemplo logado=1 e quando ele aperta-se o botao de logout o logado=0 . O problema eh q muitos usuarios preferem fechar o site do que apertar logout e eu nao sei se tem como fazer o update do mysql quando o usuario fechar o navegador.

Tambem ja pensei em determinar um tempo como por exemplo 15 minutos e depois desses 15 minutos o mysql deleta os dados e expulsa o usuario.



Tentei esse codigo so que ele nao apagou depois do tempo determinado.

Voces tem alguma ideia?

This message was edited 2 times. Last update was at 08/02/2012 18:43:14

ArturFigueiredo
HelloWorld

Membro desde: 06/02/2012 17:02:47
Mensagens: 12
Localização: Swiss
Offline

Pessoal,

Tenho umas ideias e gostaria debater com vcs sobre esse problema:
1) Gerar uma tabela com usuarios logados colocando o horário de acesso
2) Ao logar ver se consta na tabela usuarios logados, se não tiver na tabela incluir, se tiver impedir de logar
3) Num periodo de tempo, 10 minutos, limpar o registro do usuario que tem esse tempo -> meu problema esta ai, não estou conseguindo apagar
4) Se acessar outras páginas do site ficar renovando o horário de acesso

O que vc acham da ideia? E viável ?

Alguem poderia sugerir outra ideia?

Obrigado a todos,
Artur
drsmachado
GUJ Expert

Membro desde: 25/09/2010 12:54:06
Mensagens: 3986
Localização: Curitiba / São José dos Pinhais - PR
Offline

Para quê tanta coisa.
1 - Controle o tempo de sessão no PHP mesmo.
2 - Crie apenas um campo bool no mysql, setando, por padrão 0 (falso) e, então, caso o sujeito faça login, altere-o para 1 (true).
3 - Quando o usuário deslogar, faça um update, setando o campo logado para 0 (false).
4 - Se a sessão expirar, redirecione para o logoff e faça o update para 0 (false).

Rumo aos 4000
"Os homens de verdade assumem suas responsabilidades e culpas. Esquivar-se e dar desculpas é atitude dos tolos, que preferem não se comprometer".

Lugar de perguntar é no fórum!
Não respondo via MP
Não respondo por Email
Não respondo por IM
ArturFigueiredo
HelloWorld

Membro desde: 06/02/2012 17:02:47
Mensagens: 12
Localização: Swiss
Offline

Mas tem um pequeno detalhe, o usuário raramente desloga, simplesmente fecha ou muda de site.

Então vai ficar como logado.

 
Índice dos Fóruns » Desenvolvimento Web
Ir para:   
Powered by JForum 2.1.8 © JForum Team