Como listar e verificar todas as sessões abertas?

1. Como listar e verificar todas as sessões abertas?

Tiago Rocha Sarno
HackSpy

(usa Kurumin)

Enviado em 23/04/2009 - 22:15h

E ai pessoal,
estou precisando saber se tem como eu realizar uma busca em todas as sessões atuais abertas em uma determinada chave. Tenho uma situação em que uma pessoa se loga e então é criado uma sessão para essa pessoa com um ID único tipo $_SESSSION['cod_user']. Ai se uma outra pessoa tentar logar com os dados deste usuário, este deverá ser barrado pois uma sessão com este ['cod_user'] esta ativa, ou seja, após logar-se verifica-se todas as sessões abertas, caso não exista sessão com este ['cod_user'] ativa então ela é criada senão o mesmo é barrado de prosseguir no sistema. Desde já agradeço a todos.

Tiago Rocha Sarno.


  


2. Sugestão

Hugo Eustaquio SantAnna da Silva
hugoeustaquio

(usa Slackware)

Enviado em 15/05/2009 - 13:33h

Sugiro que você coloque o valor do id da sessão no banco de dados, e quando o usuário tentar logar, veja se uma sessão já foi definida para ele no banco de dados.
Monte uma tabela com os campos 'id_usuario', 'id_sessao', 'dt_expiracao' caso queira fazer relatórios de login. Se estiver usando mysql use a engine 'archive' para esta tabela.

A propósito, não te indico a barrar usuários assim, pois é possível que o browser trave, mantendo a sessão ativa. Neste caso, o usuário teria que esperar a sessão expirar, o que é um saco.....






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts