Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
boas pessoal.
tenho um sistema de login com validação de sessão. quando o user faz login, a pagina valida_sessao.php verifica se o user existe. se sim, manda para a pagina1.php se não existir , manda para a erro.php. até aqui, tudo bem. acontece que, quando o user entra e passa da pagina1.php para a pagina2.php ele destroi a sessão.
tenho um script que valida a sessão e outro que faz ligação a mysql.
no topo de cada página, coloquei assim:
<?php
include "validar_session.php";
include "Config/config_sistema.php";
// faz consulta no banco
$consulta = mysql_query("select * from a_user where user = '$login_usuario'");
este é o codigo para validar a sessão:
<?php
@session_start();
// inclui o arquivo de configuração do sistema
include "Config/config_sistema.php";
// verifica se a variavel existir
if(isset($_SESSION['login_usuario']) and isset($_SESSION['senha_usuario'])) {
// se existie as sessões coloca os valores em uma varivel
$login_usuario = $_SESSION['login_usuario'];
$senha_usuario = $_SESSION['senha_usuario'];$erro = urlencode("Você não esta logado!");
header("Location: loginf.php");
exit;
}
// verifica se as variaveis estão atribuidas
if(!(empty($login_usuario) or empty($senha_usuario))) {
// se estiverem atribuidos vamos ver se exist o login
$consulta = mysql_query("select * from a_user where user = '$login_usuario'"); unset($_SESSION['login_usuario']);
unset($_SESSION['senha_usuario']);
$erro = urlencode("Você não esta logado!");
header("Location: loginf.php");
exit;
} unset($_SESSION['login_usuario']);
unset($_SESSION['senha_usuario']);
$erro = urlencode("Você não esta logado!");
header("Location: loginf.php");
exit;
}$erro = urlencode("Você não esta logado!");
header("Location: loginf.php");
exit;
}
mysql_close($conn);
?>
valeu pela força!!! ^_^
obrigado pela resposta, mas corrigi e continua sem dar... vai para a pagina de erro...
Noossa cara que bolobo de creusa que está o seu código, tente organiza-lo melhor, use mais a lógica, se tivesse a usado corretamente teria economizado ai umas 10 linhas, e não teria erro.
Tente refazer o seu código... e eu pessoalmente não coloco a sessão em variavel, se você pode perfeitamente trabalhar com ela mesma, não tem pq, sem contar que ao mudar de página a variável some, e se você verificar usando uma variável não vai dar certo, a sessão foi feita justamente pra isso.
dado que n sou expert, me explica qual a melhor maneira de ter um sistema de login com sessão, de modo a que as demais páginas restritas verifiquem se o user está logado ou não...
o erro é aqui....
if(!(empty($login_usuario) or empty($senha_usuario))) {
troque por :
if(!empty($login_usuario) or !empty($senha_usuario)) {