Jump to content


Photo

Logout Não Funciona


  • Faça o login para participar
6 replies to this topic

#1 renatagramos

renatagramos

    Novato no fórum

  • Usuários
  • 17 posts
  • Sexo:Feminino
  • Localidade:São Paulo

Posted 21/03/2011, 16:53

Estou com problemas... o Logout não funciona de jeito nenhum. Ele redireciona para a página indicada, mas se apertar o botão voltar ele volta normalmente para o sistema ativo.

Alguém pode me ajudar?


Arquivo: login.php

<?
session_start();
include "../config.php"; //inclui o arquivo de conexão

$nome = trim($_POST['nome']);
$login = trim($_POST['login']);
$senha = trim($_POST['senha']);
$email = trim($_POST['email']);

$confirmacao = mysql_query("SELECT * FROM login WHERE login = '$login' AND senha = '$senha'", $conexao); //verifica se o login e a senha conferem
$contagem = mysql_num_rows($confirmacao); //traz o resultado da pesquisa acima

if ( $contagem == 1 ) {
setcookie ("login", $login, time(0)); //grava o cookie com o login
setcookie ("senha", $senha, time(0)); //grava o cookie com a senha
header ("Location: http://www.regratecn...esa/layout.php");
} else {
echo "<div align=center><font face=arial size=2 color=#ff0000><br>Login ou Senha inválido!</div>";
}
?>


Arquivo: logout.php


<?
session_start();
if (isset($_SESSION['login'])){
session_unset(); // Eliminar todas as variáveis da sessão
session_destroy(); // Destruir a sessão
echo "Entre. Sessão Destruida. <a href=\"../index.php\"</a><br>";
} else {
echo "Acesso não autenticado!";
}
?>

#2 Jefferson Ventura

Jefferson Ventura

    Turista

  • Usuários
  • 25 posts
  • Sexo:Masculino

Posted 23/03/2011, 17:12

Você colocou algum script nas páginas para verificar se o usuário está logado ou não?

Porque caso não tenha colocado o efeito do logout realmente não irá funcionar, melhor irá funcionar só que quando você entra na página que não tem um controle de login o acesso é permitido normalmente já que nenhum script valida o acesso.

Um exemplo bem básico é você colocar nas suas páginas onde o usuário teria que esta logado algo do tipo:

// verifica se o usuário possui um login valido na sessão
if(empty($_SESSION['login']))
{
    // exibe uma mensagem de acesso negado ou algo do tipo
    // e redireciona o usuário para página de login
    // ou realize a ação que desejar
    echo 'Acesso não autorizado!';
}

Só mesmo tirando a sua dúvida no mais cabe agora verificar as questões de autenticação e segurança!

#3 renatagramos

renatagramos

    Novato no fórum

  • Usuários
  • 17 posts
  • Sexo:Feminino
  • Localidade:São Paulo

Posted 24/03/2011, 10:31

Eu não coloquei isso nas páginas, mas vou tentar agora.

Você não tem um código de logout melhor que o meu? ou de login também....

Muito obrigada pela dica.

#4 renatagramos

renatagramos

    Novato no fórum

  • Usuários
  • 17 posts
  • Sexo:Feminino
  • Localidade:São Paulo

Posted 29/03/2011, 11:53

Eu não coloquei isso nas páginas, mas vou tentar agora.

Você não tem um código de logout melhor que o meu? ou de login também....

Muito obrigada pela dica.



Não funcionou :(

#5 Diego Bezerra

Diego Bezerra

    Diego Bezerra

  • Moderadores
  • 938 posts
  • Sexo:Masculino
  • Localidade:Amazonas
  • Interesses:Iniciando no C# com MSSQL.

Posted 31/03/2011, 16:26

Ola renatagramos olha esse sistema de login / logout funciona direitinho?

http://diegodevelope...iego-developer/

Espero que ajude ? Diego Bezerra
Att.
Diego Bezerra
Agência Kernel - em Breve
Email/msn: diegobezerra@outlook.com
Facebook

#6 Menty

Menty

    Turista

  • Usuários
  • 26 posts
  • Sexo:Não informado

Posted 04/04/2011, 09:56

coloca um link em seu sistema/site que manda pra página que tem esse código >>>
session_start(); session_destroy();
echo("<script>setTimeout(\"window.location.href='./'\",1);</script>");

vai funcionar ! :boxing:

#7 renatagramos

renatagramos

    Novato no fórum

  • Usuários
  • 17 posts
  • Sexo:Feminino
  • Localidade:São Paulo

Posted 05/04/2011, 17:25

Olá, pessoal!!!

Está funcionando perfeito!!! Consegui assim...

LOGIN.PHP

<?php
include "../config.php"; //inclui o arquivo de conexão

$nome = trim($_POST['nome']);
$login = trim($_POST['login']);
$senha = trim($_POST['senha']);
$email = trim($_POST['email']);

$confirmacao = mysql_query("SELECT * FROM login WHERE login = '$login' AND senha = '$senha'", $conexao); //verifica se o login e a senha conferem
$contagem = mysql_num_rows($confirmacao); //traz o resultado da pesquisa acima

session_start();

if ( $contagem == 1 ) {
$_SESSION['login'] = $login;
$_SESSION['senha'] = $senha;

echo "<script>location.href='http://www.regratecnologia.com.br/siesa/layout.php'</script>"; //entra na pagina restrita

} else {
echo "<div align=center><font face=arial size=2 color=#ff0000><br>Login ou Senha inválido!</div>";}
?>
<p align="center"><a href="javascript:history.go(-1)"><img src="../imagens/voltar.jpg" alt="Voltar" border="0" align="center"></a>



LOGOUT.PHP

<?php
session_start();
unset($_SESSION["login"]); // tira seleção da variável
unset($_SESSION["senha"]); // tira seleção da variável
session_destroy(); // destroi
header("location: ../index.php"); // vai para a página
?>

E EM TODAS AS PÁGINAS RESTRITAS:

<?php
include "../config.php"; //inclui o arquivo de conexão

session_start(); // começa a session

if(!isset($_SESSION["login"])){
echo "ACESSO NEGADO";
}else{

$login = $_SESSION["login"];
$sql = mysql_query("SELECT * FROM login WHERE login='$login'") or die("O nome de Utilizador ou Senha está incorrecto. MySQL erro:".mysql_error()); // vê se o username existe ou não
$result = mysql_fetch_array($sql); // põem as informações da database numa array
?>

*** Códigos HTML ***

<?php
}
?>

Olá, pessoal!!!

Está funcionando perfeito!!! Consegui assim...

LOGIN.PHP
<?php
include "../config.php"; //inclui o arquivo de conexão

$nome = trim($_POST['nome']);
$login = trim($_POST['login']);
$senha = trim($_POST['senha']);
$email = trim($_POST['email']);

$confirmacao = mysql_query("SELECT * FROM login WHERE login = '$login' AND senha = '$senha'", $conexao); //verifica se o login e a senha conferem
$contagem = mysql_num_rows($confirmacao); //traz o resultado da pesquisa acima

session_start();

if ( $contagem == 1 ) {
$_SESSION['login'] = $login;
$_SESSION['senha'] = $senha;

echo "<script>location.href='http://www.regratecnologia.com.br/siesa/layout.php'< /script>"; //entra na pagina restrita

} else {
echo "<div align=center><font face=arial size=2 color=#ff0000><br>Login ou Senha inválido!</div>";}
?>
<p align="center"><a href="javascript:history.go(-1)"><img src="../imagens/voltar.jpg" alt="Voltar" border="0" align="center"></a>


LOGOUT.PHP
<?php
session_start();
unset($_SESSION["login"]); // tira seleção da variável
unset($_SESSION["senha"]); // tira seleção da variável
session_destroy(); // destroi
header("location: ../index.php"); // vai para a página
?>

E EM TODAS AS PÁGINAS RESTRITAS:
<?php
include "../config.php"; //inclui o arquivo de conexão

session_start(); // começa a session

if(!isset($_SESSION["login"])){
echo "ACESSO NEGADO";
}else{

$login = $_SESSION["login"];
$sql = mysql_query("SELECT * FROM login WHERE login='$login'") or die("O nome de Utilizador ou Senha está incorrecto. MySQL erro:".mysql_error()); // vê se o username existe ou não
$result = mysql_fetch_array($sql); // põem as informações da database numa array
?>

*** Códigos HTML ***

<?php
}
?> 





1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq