DJ DeviL 0 Denunciar post Postado Abril 18, 2003 Olá, estou montando um sistema de login com sessions.No arquivo login.php, ele checa se o nome de usuário e senha são válidos, se forem, ele grava em session 3 variaveis, a 1 é se esta logado, a 2 o nome e a 3 o login da pessoa. Tudo funciona perfeito, exeto o código para dar log-out. Será que alguem pode me ajudar?// arquivo index.php<?phpsession_start();// Conteudo do siteinclude("login.php");?>// arquivo login.php<?phpsession_start();if ($_GET["action"]) == "logout"){session_unset();session_destroy();header("Location: index.php");}if ($_POST["action"]) == "login"){// Código para checar usuario e senha - MySQL$_SESSION["logado"] = "ok";$_SESSION["nome"] = $nome;$_SESSION["login"] = $login;header("Location: index.php");}// Se não executar nenhuma dessas funcoes executa// o código HTML para montar a pagina de login?>Espero que alguem possa me dar uma luzObrigado, Gabriel Compartilhar este post Link para o post Compartilhar em outros sites
dfcabello 0 Denunciar post Postado Abril 19, 2003 xii cara q roloprimeiro se nao precisa de duas iniciações de sessão tira a do login.phpnao sei se eh melhor mas ve se você curte assim:// arquivo login.php<?phpsession_start();if ($_GET["action"]) == "logout"){$_SESSION["logado"] = "nem";$_SESSION["nome"] = "";$_SESSION["login"] = "";header("Location: index.php");}if ($_POST["action"]) == "login"){// Código para checar usuario e senha - MySQL$_SESSION["logado"] = "ok";$_SESSION["nome"] = $nome;$_SESSION["login"] = $login;header("Location: index.php");}dai nas páginas pra segurança ou pra cadastrados se confere:se logado esta ok ou nem! ;) Compartilhar este post Link para o post Compartilhar em outros sites
DJ DeviL 0 Denunciar post Postado Abril 19, 2003 Eu tirei o session_start(); do login.php, só que continua dando o mesmo problema :) não sei mais o que fazer pra arrumar Compartilhar este post Link para o post Compartilhar em outros sites
dfcabello 0 Denunciar post Postado Abril 19, 2003 mas se tento modificar o arquivo como eu falei?botar quando logout, logado = nem, ao invés de destruir? Compartilhar este post Link para o post Compartilhar em outros sites
DJ DeviL 0 Denunciar post Postado Abril 19, 2003 Sim, não dá certo. Ele cria uma session nova com todos os valores nulos em vez de abrir a session atual e substituir os valores Compartilhar este post Link para o post Compartilhar em outros sites
tuliofernando 0 Denunciar post Postado Abril 19, 2003 // arquivo index.php<?phpsession_start();// Conteudo do siteinclude("login.php");?>// arquivo login.php<?phpsession_start();if ($_GET["action"]) == "logout"){session_unset();session_destroy();header("Location: index.php");}if ($_POST["action"]) == "login"){// Código para checar usuario e senha - MySQL$_SESSION["logado"] = "ok";$_SESSION["nome"] = $nome;$_SESSION["login"] = $login;header("Location: index.php");}// Se não executar nenhuma dessas funcoes executa// o código HTML para montar a pagina de login?>Analisando seu código e levando em conta um sistema de login que desenvolvi, cheguei a algumas considerações:- Para navegar dentro do sistema não utilizo o comando "header", isso porque tal comando (pelo menos em meus testes) não usa a sessao iniciamente criada, gerando outro com valores nulos;- Antes de executar um session_destroy() sempre deve ter um session_start() (nao uso o unset e funciona perfeitamente);Se precisar de mais ajudar é so estou à disposiçao...Túlio Compartilhar este post Link para o post Compartilhar em outros sites
DJ DeviL 0 Denunciar post Postado Abril 21, 2003 Tinha um erro no script, um comando errado por isso tava dando problema. Consegui arrumar já. Obrigado à Todos, Gabriel Compartilhar este post Link para o post Compartilhar em outros sites