Ir para conteúdo

POWERED BY:

Arquivado

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

fred silva

[Resolvido] Problemas com Session no servidor

Recommended Posts

Olá galera,

é o seguinte: tenho um login de usuário usando Session, funciona perfeitamente em localhost, mas no servidor ao invés de aparecer os dados, aparece sempre o número 2 para qualquer dado que tento retorna da session.

Será que é o servidor?

//Tem um select que pega dos dados desejados
$_SESSION[usuario] = array("id" => $linha["usu_id"],
           "nome" => $linha["usu_nome"],
           "sobrenome" => $linha["usu_sobrenome"],
           "email" => $linha["usu_email"]            			
       );//Coloco em um array

//Dentro da página após estar logado chamo alguns dados
<?php echo $_SESSION[usuario]["nome"]." ".$_SESSION[usuario]["sobrenome"];//Aqui aparece 2 2 ao invés de José da Silva ?>

Coloquei bem resumido, mas se precisarem de mais informações...

grato,

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ele ta te exibindo o índice da Array, coloque mais código ai, pra tentar te ajudar, como está o retorno de sua consulta sql?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ele ta te exibindo o índice da Array, coloque mais código ai, pra tentar te ajudar, como está o retorno de sua consulta sql?

Bom... segue a página da página de login:

logar.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" />
<link type="text/css" rel="stylesheet" href="estilos/layout_geral.css"/>        
</head>	
<body>
<?php
   include "conexao.php";

   $email = mysql_real_escape_string($_POST["email"]);
   $senha = mysql_real_escape_string(md5($_POST["senha"]));

   $sql = "SELECT u.*, cbanc_agencia, cbanc_numero_conta, cbanc_tipo, banc_id, banc_nome, ctwen_valor_receber, ctwen_valor_credito, est_nome, cid_id, cid_nome, ctwen_id FROM usuario u, conta_bancaria, banco, conta_twenty, estado, cidade WHERE u.usu_email = '$email' AND u.usu_senha = '$senha' AND cbanc_usuario_id = u.usu_id AND cbanc_banco_id = banc_id AND ctwen_usuario_id = u.usu_id AND usu_cidade_id = cid_id AND cid_estado_id = est_id";
   $query = mysql_query($sql);
   $linha = mysql_fetch_array($query);

   if (mysql_num_rows($query) > 0){        
       $_SESSION["usuario"] = array("id" => $linha["usu_id"],
           "nome" => $linha["usu_nome"],
           "sobrenome" => $linha["usu_sobrenome"],
           "email" => $linha["usu_email"]            			
       );

       echo "<script type='text/javascript'> location.href = 'home.php'</script>";
   }else{
	unset ($_SESSION["usuario"]);//Destrói a SESSION
	?>	
	<div id="falha_login">
		<span class="falha_login">E-mail ou senha incorretos!</span>
           <form name="login" method="post" action="">
           	E-mail<br>
               <input id="login" type="text" name="email" class="email" size="30"><br>
               Senha<br>
               <input id="login" type="password" name="senha" class="senha" size="30">
               <br><br>                    
			<input type="submit" value="Entrar" id="botoes"><a href="recuperar_senha.php">Recuperar senha</a>
           </form>
	</div>        
   <?php 
        }
   ?>	
</body>
</html>

 

Só lembrando que em localhost funciona normal.

Valeu pela força!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom... resolvi aqui, como eu só preciso do id do usuário, parei de utilizar o array e funcionou!

Troquei:

$_SESSION[usuario] = array("id" => $linha["usu_id"],
           "nome" => $linha["usu_nome"],
           "sobrenome" => $linha["usu_sobrenome"],
           "email" => $linha["usu_email"]                              
       );

por:

$_SESSION["id"] = $linha["usu_id"];

Marcus obrigado pela ajuda!

T+

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.