Printar select usando PDO.
Olá, recentemente estive quebrando minha cabeça para tentar resolver um problema que está ocorrendo comigo, eu estou tentando buscar o nome do usuário na tabela do sql filtrando os dados com o login informado, ele printa exatamente como que queria, porém printa na página index e ao ser redirecionado para a home o print some, observem a imagem abaixo juntamente com o código do sistema de login atual, está tudo funcionando perfeitamente, ele só printa o nome do usuário na página errada, gostaria para que ao entrar no painel aparecesse a mensagem "Seja bem vindo (nome do usuário)!".
<?php
//Require
require_once('function.php');
ini_set('default_charset', 'utf-8');
//Variáveis;
$lgerror = "";
$lgresult = "";
$lgcontar = "";
$lgmsg = "Olá, seja bem vindo!";
$lgbv = "";
//Sistema de Login;
if(isset($_POST['login'])){
//Recuperando dados inseridos no form;
$uslogin = trim(strip_tags($_POST['lguser']));
$uspass = trim(strip_tags($_POST['lgpass']));
//Encryptação da senha;
$uspasshash = criarhash($uspass);
//Selecionando a tabela e colunas no banco de dados;
$lgdbselect = "SELECT * FROM usuarios WHERE BINARY us_login=:lguser AND BINARY us_pass=:lgpass";
//Realizando a ação;
try{
//Preparando a ação para execução;
$lgresult = $dbconectar->prepare($lgdbselect);
//Definindo os parâmetros da conexão;
$lgresult->bindParam(':lguser',$uslogin,PDO::PARAM_STR);
$lgresult->bindParam(':lgpass',$uspasshash,PDO::PARAM_STR);
//Executando a ação;
$lgresult->execute();
$lgcontar = $lgresult->rowCount();
//Verificação dos dados;
if($lgcontar>0){
$uslogin = $_POST['lguser'];
$uspass = $_POST['lgpass'];
//Criando sessão de armazenamento dos dados;
$_SESSION['lguslogin'] = $uslogin;
$_SESSION['lguspass'] = $uspass;
//Mensagem caso seja logado com sucesso;
$lgmsg = 'Login realizado com sucesso!';
//Redirecionamento para a homepage após 1seg;
header("Refresh:1, pages/home.php?acao=sucess");
}
//Caso os dados estejam incorretos;
else{
//Exibe uma mensagem de erro no login;
$lgmsg = 'Usuário ou senha incorreto!';
}
}
//Exibir mensagem de erro do sistema quando houver;
catch(PDOException $lgerror){
echo $lgerror->getMessage();
}
}
//Negando acesso direto caso não esteja logado;
if(isset($_GET['lgacao'])){
//Se não existir nenhum post - tentativa de acesso direto;
if(!isset($_POST['login'])){
//Negando acesso o direto sem login;
$lgacao = $_GET['lgacao'];
if($lgacao == 'negado'){
//Exibindo mensagem de alerta;
$lgmsg = 'É necessário estar logado para acessar!';
}
}
}
//Mensagem de boas vindas ao logar;
if(isset($_GET['acao'])){
$lgacao = $_GET['acao'];
//Ação da mensagem de boas vindas;
if($lgacao == 'sucess'){
//Mensagem de boas vindas exibida caso exista a ação sucess;
echo 'Seja bem vindo';
}
}
//Consultar nome;
$lgbvselect = "SELECT us_nome FROM usuarios WHERE BINARY us_login=:uslogin";try{
$lgbv = $dbconectar->prepare($lgbvselect);
$lgbv->bindParam(':uslogin',$uslogin,PDO::PARAM_STR);
if($lgbv->execute()){
if($lgbv->rowCount() > 0){
while($bvobj = $lgbv->fetch(PDO::FETCH_OBJ)){
echo $bvobj->us_nome . "";
}
}
}
}
//Exibir mensagem de erro do sistema quando houver;catch(
PDOException $lgerror){
echo $lgerror->getMessage();
}
?>
AS IMAGENS COM O RESULTADO DO CÓDIGO.
Página inicial normal.
Página ao clicar em entrar com os dados corretos, exibindo o nome do usuário.
Página home onde deveria aparecer.
Discussão (1)
Carregando comentários...