Ir para conteúdo

POWERED BY:

Arquivado

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

Eduardo Honorato

Não retornando dados da session

Recommended Posts

Fiz um sistema que quando o usuário logar no painel de controle, a primeira tela seria a exibição de seus dados, porém ele está retornando somente o nome do usuário, já os outros dados selecionados como o ID aparece este erro como na imagem. Alguém poderia me auxiliar nisso?

 

Código:

    <?php 
        if(isset($_SESSION["login"])){
            echo 'Nome Completo: <i>'.$_SESSION["login"]["loginSite_Nome"].'</i><br><hr class="hr_profile">';

            echo 'Id Cliente: <i>'.$_SESSION["login"]["loginSite_Id"].'</i><br><hr class="hr_profile">';
        }
    ?>

Erro:

 

S4kG0JW.png

Compartilhar este post


Link para o post
Compartilhar em outros sites

E como está o restante do código, o que está usando para criar a session? Acredito que essa é a parte mais importante, aonde deve estar o problema. E já verificou se está usando os nomes dos campos do banco de dados e os da session corretamente?

Compartilhar este post


Link para o post
Compartilhar em outros sites

na verdade eu teria que definir aqui outros paremetros do banco a ser exibido, né? mas como faço isso?

<?php 
if(session_id()==''){
session_start();
}
	if(!isset($_SESSION["login"]["loginSite_Nome"])){
		header("Location: index.html#abrirModal2");
	}
 ?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Primeiro, sugiro tirar o if do início. Sempre que uma página for usar seção, já comece dando um session_start();. E para montar a array da session, você precisa fazer um SELECT no banco de dados e coletar de lá os valores. Mais ou menos assim:

$username = mysql_real_escape_string($_POST["user"]);
$senha = MD5($_POST["senha"]);

$query = mysql_query("SELECT * FROM tblusers WHERE usuario='$username' And senha='$senha'");

if(mysql_num_rows($query) > 0){
    $_SESSION["dados_user"] = array();
    $row = mysql_fetch_array($query)
    $_SESSION["dados_user"]["id"] = $row['id'];
    $_SESSION["dados_user"]["nome"] = $row['nome'] . " " . $row["sobrenome"];
    $_SESSION["dados_user"]["usuario"] = $row['usuario'];
}
Tente adaptar para o seu caso. Estou supondo que sua senha está criptografada com MD5. Por isso passei o MD5 na $senha.

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.