Ir para conteúdo

POWERED BY:

Arquivado

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

manolegal

[Resolvido] Deslogar todos usuarios logados

Recommended Posts

Ola amigos. Como faço para deslogar todos os usuários ativos (derrubar sessões) do meu site ao mesmo tempo? Como faço isso através de um código?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Caso na sua tabela de usuário tenha uma opção com o status, informando se está online ou offline, você poderia selecionar todos os usuários da tabela que estivessem com status online e mudá-los para offline. Algo como :

 

UPDATE usuarios SET status = 'offline' WHERE status = 'online'

Compartilhar este post


Link para o post
Compartilhar em outros sites

<?

$confirmacao = mysql_query("SELECT * FROM `usuarios` WHERE login = '$nome' AND senha = '$pass' AND status = 'Online'", $db);

$contagem = mysql_num_rows($confirmacao);

mysql_query("UPDATE usuarios SET status='offiline' WHERE login = '$login'");

session_start();

session_unset();

session_destroy();

window.close(); ?>

 

uma ideia..

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Marcos_imasters

Cara window.close(); ???????????????

 

@topic

Como nosso amigo Marcelo de Andrade disse basta você ter um campo que define os status do usuário naquele momento, e caso o status do usuário seja on ele da um update e manda pra off mas alem disso você tem que impedir com que esse usuário retorne para o status on depois do update. Mas para que isso dê certo você tem que fazer com que seu sistema de login verifique sempre os status do usuário em todas as páginas.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vini_Aviva

Na sua tabela de usuarios você deve ter uma coluna chamada status que sera modificada cada vez que o usuario longar no seu site que devera aparecer online quando entrar e quando sair devera aparecer offiline mais isso ja e outra coisa

A somente seguir o que o Marcos_imasters falou

 

$confirmacao = mysql_query("SELECT * FROM `usuarios` WHERE login = '$nome' AND senha = '$pass' AND status = 'online'", $db); 
$contagem = mysql_num_rows($confirmacao); 
mysql_query("UPDATE usuarios SET status='offiline' WHERE login = '$login'");
session_start();
session_unset(); 
session_destroy(); 
header("Location: manutenção.php"); 
?>

 

Mais trocaria o

window.close();

por um

header("Location: manutenção.php"); 

 

Para que o usuario possa estar voltando a pagina principal

Mais eu acho melhor que você deveria criar uma pagina de manutenção

Ai redirecionava para la e usuario estaria ciente o que acontece

Por que o usuario não iria entender o disconect da conta do nada

Compartilhar este post


Link para o post
Compartilhar em outros sites

$confirmacao = mysql_query("SELECT * FROM `usuarios` WHERE login = '$nome' AND senha = '$pass' AND status = 'online'", $db);

$contagem = mysql_num_rows($confirmacao);

mysql_query("UPDATE usuarios SET status='offiline' WHERE login = '$login'");

session_start();

session_unset();

session_destroy();

header("Location: manutenção.php");

?>

 

Com base neste script, adaptei meu código e funcionou perfeitamente. Problema resolvido. Obrigado a todos.

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.