Ir para conteúdo

POWERED BY:

Arquivado

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

LACRIMAL

[Resolvido] erro na sessão

Recommended Posts

olá =D

eu estou fazendo um sisteminha básico de login, mas não to conseguindo entender o porque que não continua logado.

O codigo é esse :

<?php
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Pragma: no-cache");

define('RESTRITO','SIM');

//DB
require_once("db.php");

function anti_injection($sql){
$sql = preg_replace(sql_regcase("/(from|select|insert|delete|where|drop table|show tables|#|\*|--|\\\\)/"),"",$sql);
$sql = trim($sql);
$sql = strip_tags($sql);
$sql = addslashes($sql);
return $sql;
}

//LOGIN
if($_REQUEST['cmd']=="login"){
			$usuario = anti_injection($_REQUEST['user']);
			$senha = anti_injection($_REQUEST['senha']);
			
			$sql = 'SELECT * FROM tabela WHERE login="'.$usuario.'" AND senha=md5("'.$senha.'") LIMIT 1';
			$exe = mysql_query($sql, $db);
			if(!$exe){ echo "Não foi possivel acessar o banco de dados. Erro: " . mysql_error(); exit;}
			if(!$sql){ echo "Preencha seus dados corretamente."; exit;}
			if(mysql_num_rows($exe) == 0){ echo "Login ou Senha errado."; exit;}
			if(mysql_num_rows($exe) > 1) { echo "foi"; }
			if(count($exe) == 1){ 
			while ($result = mysql_fetch_array($exe)){
			session_id(sid);
			session_start();
			$_SESSION['logado']=true;
			$_SESSION['login']=$result['login'];
			$_SESSION['nome']=$result['nome'];
			$_SESSION['email']=$result['email'];
			}
			} else { 
			$_SESSION['logado']=false;
			session_destroy();
			}
}

//LOGOUT
if($_REQUEST['cmd']=="logout") {
			$_SESSION['logado']=false;
			session_destroy();
}

//.
if($_SESSION['logado']==true){ 
			require('pagina_base.php');
} else { 
 			require('login.php');
}

?>

 

ai, quando o login tá certo ele vai pra pagina base:

<?php
if(!defined('RESTRITO')){ die("VOCE NAO PODE ACESSAR ESTE ARQUIVO DIRETAMENTE"); }
if($_SESSION['logado']==true){
?>
<?php

if($_REQUEST['cmd']=='user'){ require('user.php'); }

$titulo = "você está no início :)";
$conteudo_topo = 'pagina_topo_padrao.php';
$conteudo_centro = 'pagina_centro_padrao.php';
$conteudo_footer = 'pagina_footer_padrao.php';
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859" />
<meta http-equiv="description" content="Comece a ver e interagir com o mundo de uma forma surpreendente; RH"
<title> titulo  ~  <?php echo "$titulo"; ?>  </title>
</head>
<body>

<?php require($conteudo_topo) ?><?php require($conteudo_centro) ?><?php require($conteudo_footer) ?>

<a href="index.php?cmd=logout"> Fazer logoff</a>
</body>
</html>
<?php } ?>

Alguem sabe me dizer porque quando eu uso o ?cmd=user (

if($_REQUEST['cmd']=='user'){ require('user.php'); }), ele entende que o usuario não está logado ??

 

obguado desde já =D

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.