Como eu busco todos os dados do usuário de uma sessão?
tenho no banco de dados nome, sobrenome, email e senha. Que código uso para buscar cada um destes dados individualmente?
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Como eu busco todos os dados do usuário de uma sessão?
tenho no banco de dados nome, sobrenome, email e senha. Que código uso para buscar cada um destes dados individualmente?
Vou supor que você já guardou o id do usuário em uma $_SESSION, é só você fazer a query ao banco de dados buscando pelo usuário que possui aquele id, ex:
SELECT * FROM USUARIO WHERE id ='". $_SESSION['id']."'"
Essa é a query que irá no banco buscar o usuário desejado.
Wilson Bom dia, acho que faltou um '$' ali quando você está passando o índice para pegar a session.
Eu não guardei o id do usuário em minha sessão. Não sei como fazer isso, pois não foi apresentado na aula, pelo menos que eu tenho entendido.
Mesmo depois de pegar o id do usuário, como eu faço para exibir os dados dele separadamente?
tipo
echo <?=$usuario['nome']?> echo <?=$usuario['sobrenome']?>
no curso ensina a buscar uma lista de produtos que está no banco de dados, se eu fizer uma lista de usuários, também vai me apresentar a lista da tabela usuários, mas não sei como pegar um único usuário por sessão e montar um perfil com os dados dele.
Não vou copiar tudo aqui, mas tem esse link supimpa para aprender a guardar o id do user na sessão . Lembre-se de sempre apagar o/os valoro(es) que tem guardado na sessão quando o user der logout.
A consulta ficaria como o amigo falou.
Olá Davi, no tutorial ele me ensina a guardar o nome do usuário dentro da página e usar em outras páginas. Mas eu quero buscar o nome no banco de dados. O tutorial não ensina a fazer isso <?php $_SESSION['usuario'] = 'Thiago';
Se você tem usuário X logado, ele tem que salvar algo na sessão para poder fazer a consulta SQL e buscar o resto dos dados do usuário X em questão.
Deu certo amigo?
Então Davi deu certo e a solução foi alterar minha função, ficou assim:
function logaUsuario($email, $id, $nome, $cidade, $estado, $pais, $funcao, $senha) {
$_SESSION['usuario_logado'] = $email; $_SESSION['usuario_id'] = $id; $_SESSION['usuario_nome'] = $nome; $_SESSION['usuario_cidade'] = $cidade; $_SESSION['usuario_estado'] = $estado; $_SESSION['usuario_pais'] = $pais; $_SESSION['usuario_funcao'] = $funcao; $_SESSION['usuario_senha'] = $senha; }
na hora de abrir a sessão, no momento do login, eu a chame desta forma:
logaUsuario($usuario['email'], $usuario['id'], $usuario['nome'], $usuario['cidade'], $usuario['estado'], $usuario['pais'], $usuario['funcao'], $usuario['senha']); header("Location: ../interno/index.php"); }
e para chamar um dado do usuário para preencher o perfil eu uso, por exemplo se quiser exibir o nome:
<?=$_SESSION['usuario_nome'];?>
se quiser exibir a cidade:
<?=$_SESSION['usuario_cidade'];?>
e assim por diante