Qual o problema com a SESSION??? Os dados nao sao mantidos!!

MySQL

17/03/2008

[color=´#FF0000´]Olha o código fonte:

Na página inicial o usuário digita seu email e sua senha, o usuário então é logado(através de loginx.php) e na página inicial(logadox.php que tem os frames logado1x e logado2x) são exibidos seus dados registrados através de loginx.php em ´SESSION´.
Até aí tudo ok...
O problema é que após um reload ou após usar algum link(até mesmo o link que aponta para a própria página logado2x.php) a página perde os dados registrados em SESSION e assume os dados do ultimo registro da tabela ´tbusuarios´ do MySQL.

Algo errado?[/color]

HEEEEEEELLLLP!!!!!!!!!!!!!!!


Página: login.php
<?
include "conecta.php"; /*Conecta com o BD MySQL */
ob_start();
session_start();

//RECEBE OS DADOS DO FORMULÁRIO E RETIRA CODIGO MALICIOSO
// Recuperando informações.
   $email = $_POST["email"];
   $senha01 = $_POST["senha"];

// *** SÓ CONTINUA SE O EMAIL EXISTIR, TIVER 6 OU MAIS CARACTERES E @
if ((strlen($email) >= 6) && (substr_count($email,"@") == 1) && (substr($email,0,1) != "@") && (substr($email,strlen($email)-1,1) != "@"))
{

// Verificando se as informações estão corretas.
$verifica = mysql_query("SELECT * FROM tbusuarios WHERE email = ´$email´ AND senha = ´$senha01´");

// Condicionando resultado conforme consulta.
// Verifica se retornou algo
$conta = mysql_num_rows($verifica);
if ($conta > 0)
{

$_SESSION[´nome´] = mysql_result($verifica,0,"nome");
$_SESSION[´idusuario´] = mysql_result($verifica,0,"idusuario");
$_SESSION[´email´] = mysql_result($verifica,0,"email");
$_SESSION[´nivelusuario´] = mysql_result($verifica,0,"nivelusuario");

$idauxiliar = $_SESSION[´idusuario´];

$auxiliar = mysql_query("SELECT * FROM tbusuarios1 WHERE tbusuarios_idusuario = ´idauxiliar´");

$_SESSION[´recado1´] = mysql_result($auxiliar,0,"recado1");
$_SESSION[´recado2´] = mysql_result($auxiliar,0,"recado2");
$_SESSION[´recado3´] = mysql_result($auxiliar,0,"recado3");
$_SESSION[´curso´] = mysql_result($auxiliar,0,"curso");
$_SESSION[´turno´] = mysql_result($auxiliar,0,"turno");

header("location: logadox.php");
}
else
  {
   echo "Deu erro!!!! Favor voltar e tentar novamente!";
   echo "<form>";
   echo "<input type=´button´ value=´ Voltar ´";
   echo "onclick=´history.go(-1)´> </p>";
   echo "</form>";
  }
}
ob_end_flush();
?>


Página logadox.php
<head><title></title></head>

<frameset rows="5¬,*¬" cols="*" border="0" frameborder="0" e framespacing="0">

  <frame src="logado1.php" name="menu">
  <frame src="logado2.php" name="conteudo">

</frameset>
<noframes>
<body></body>
</noframes></html>


Página logado1x.php
<? 
include "conecta.php"; /*Conecta com o BD MySQL */
ob_start();
session_start();

$nome = $_SESSION[´nome´];
$nivelusuario = $_SESSION[´nivelusuario´];
$idusuario = $_SESSION[´idusuario´];
$curso = $_SESSION[´curso´];
$turno = $_SESSION[´turno´];
?>

<html><head><title></title>
<style type="text/css">
<!--
body {
background-image: url(imagens/fd2.jpg);
}
body,td,th {
font-size: 11px;
}
-->
</style></head>

<body>

<center>
  <table width="100¬" border="0">
    <tr>
      <td width="*¬"><div align="center"></div></td>
      <td width="*¬">
        <div align="center">
          <?
if ($_SESSION[´nivelusuario´] = 1)
{
echo " | <a href=´logado2x.php´ target=´conteudo´>Inicio</a>";
$nivelusuariox = $_SESSION[´nivelusuario´];
if ($nivelusuariox == 3) { 
echo " | <a href=´adusuarios.php´ target=´conteudo´>Administrar usuarios</a>"; 
}
echo " | <a href=´foto.php´ target=´conteudo´>Cadastrar foto</a>";
echo " | <a href=´faleconosco.php´ target=´conteudo´>Fale conosco</a>";
echo " | <a href=´logout.php´ target=´_top´>LOGOUT</a>";

}
?>      
        </div></td>
      <td width="*¬"><div align="center">
  <? echo "Usuario:" . $nome . "(" . $nivelusuario . "/" . $idusuario . ") - " . $curso . "/" . $turno; ?></div>
  </td>
    </tr>
  </table>
</CENTER>
</body>
</html>

<? ob_end_flush(); ?>


Página logado2x.php
<? 
include "conecta.php"; /*Conecta com o BD MySQL */
ob_start();
session_start();

$nome1 = $_SESSION[´nome´];
$idusuario1 =  $_SESSION[´idusuario´];
$email1 =  $_SESSION[´email´];
$nivelusuario1 = $_SESSION[´nivelusuario´];
$recado11 = $_SESSION[´recado1´];
$recado22 = $_SESSION[´recado2´];
$recado33 = $_SESSION[´recado3´];
$curso1 = $_SESSION[´curso´];
$turno = $_SESSION[´turno´];

$idauxiliar = $_SESSION[´idusuario´];
?>

<html><head><title></title>
<style type="text/css">
<!--
body { background-image: url(imagens/fd2.jpg); }
-->
</style></head>
<body>
<div align="center"><BR>
  
  <? echo "<img src=´" . $fotousuario . "´>"; ?>
  
<?
echo "<BR>";
echo $nome1;
echo "<BR>";
echo $idusuario1;
echo "<BR>";
echo $email1;
echo "<BR>";
echo $nivelusuario1;
echo "<BR>";
echo $curso1;
echo "<BR>";
echo $turno1;
echo "<BR>";
?>
  
</div>
</body>
</html>
<? ob_end_flush(); ?>



Página de logoutx.php
<? 
ob_start();

session_start();

session_destroy();

header("Location: index.html");
?>

<? ob_end_flush(); ?>


[color=´#FF0000´][b:1aea583cb0]O QUE HÁ DE ERRADOOOOOOO?????????????[/b:1aea583cb0][/color]


Dscj.tec

Dscj.tec

Curtidas 0

Respostas

Carlosphp

Carlosphp

17/03/2008

O comando da session tem que ser o primeiro comando do programa php, antes de qualquer coisa.

Abraço


GOSTEI 0
POSTAR