Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá Pessoal;
Estou com um problemão. Já pesquisei em vários lugares e achei até algumas funções que não funcionaram.
Inicio minha página com "session_start();" normal e depois que faço a verificação do usuario no login eu gravo a session "$_SESSION['login'] = $login;".
blz, usuário entra na página administrativa com tudo ok.
Qualquer link dentro desta página da erro e a session não existe mais, ele volta a fazer o login normalmente, nesta segunda vez o usuário fica o dia todo navegando na área administrativa sem problema algum.
Isso acontece desta forma idependente do pc e navegador.
Como posso resolver?
Todas as páginas em o session_start().
Na segunda vez que se faz o login o usuário passeia por todas as páginas sem problema.
O problema é que tem de fazer o login duas vezes sempre.
Poste seu arquivo que faz a sessão do login.
PS: Poste dentro da tag de códigos do editor do fórum, pra ficar mais organizado, senão vira zona e broxa ler.
Luckas, duas linhas básicas em todos os arquivos php para manter sessão:
<?php
session_start();
$login = $_SESSION['login'];
...
?>
O problema, de autenticar duas vezes é simples, você de estar destruindo a sessão!
Só isso! :)
Então né. Se sentindo um idiota.
Problema é que as duas linhas simples estavam depois de um include.
Coloquei antes do include e parei de destruir a sessão.
Obrigado pessoal. Desculpa a ignorância aqui.
Abraços
Nas páginas onde dá erro, você tem o session_start() na primeira linha?
Isso é essencial. Todas as páginas que trabalharão com sessões devem ter o session_start.
Veja também se em alguma dessas páginas não tem nenhum unset, session_destroy ou coisa parecida.