Undefined index: nome e nivel in php
25/06/2019
0
Prezados bom dia.
estou tenho um projeto onde uma vez logado, ele mostra o nome e o nivel de acesso, no entanto me encontro com este problema como mostra o titulo acima.
segue abaixo o código para melhor entendimento:
public function logar($usuario, $senha) {
global $pdo;
$sql = $pdo->prepare("SELECT nome,usuario,nivel FROM usuarios WHERE usuario = :u AND senha = :s AND ativo = 1 LIMIT 1");
$sql->bindValue(":u",$usuario);
$sql->bindValue(":s",sha1($senha));
$sql->execute();
$dado = $sql->fetch(PDO::FETCH_ASSOC);
session_start();
$_SESSION["nome"] = $dado['nome'];$_SESSION["usuario"] = $dado['usuario'];$_SESSION["nivel"] = $dado['nivel'];
$nivel = $_SESSION['nivel'];
if(isset($nivel))
{ //entrar no sistema (sessao)
switch($nivel)
{
case '3': echo "<br />"."nivel 0 confirmado!"; break;
case '1': echo "<script>window.location='modulos/comercial/home.php'</script>"; break;
case '2': echo "<script>window.location='modulos/comercial/home.php'</script>"; break;
}
return true; //cadastrado com sucesso
}
else
{ //nao foi possivel logar
return false;session_destroy();exit;
}
}
podem me ajudar??
Gratidão.
estou tenho um projeto onde uma vez logado, ele mostra o nome e o nivel de acesso, no entanto me encontro com este problema como mostra o titulo acima.
segue abaixo o código para melhor entendimento:
public function logar($usuario, $senha) {
global $pdo;
$sql = $pdo->prepare("SELECT nome,usuario,nivel FROM usuarios WHERE usuario = :u AND senha = :s AND ativo = 1 LIMIT 1");
$sql->bindValue(":u",$usuario);
$sql->bindValue(":s",sha1($senha));
$sql->execute();
$dado = $sql->fetch(PDO::FETCH_ASSOC);
session_start();
$_SESSION["nome"] = $dado['nome'];$_SESSION["usuario"] = $dado['usuario'];$_SESSION["nivel"] = $dado['nivel'];
$nivel = $_SESSION['nivel'];
if(isset($nivel))
{ //entrar no sistema (sessao)
switch($nivel)
{
case '3': echo "<br />"."nivel 0 confirmado!"; break;
case '1': echo "<script>window.location='modulos/comercial/home.php'</script>"; break;
case '2': echo "<script>window.location='modulos/comercial/home.php'</script>"; break;
}
return true; //cadastrado com sucesso
}
else
{ //nao foi possivel logar
return false;session_destroy();exit;
}
}
podem me ajudar??
Gratidão.
Leonardo
Curtir tópico
+ 0
Responder
Posts
25/06/2019
Fabiano Carvalho
antes do session_start() coloque print_r($dado) e veja o que retorna.
Responder
25/06/2019
Leonardo
Fabiano Carvalho, ele me retorna uma array
Array ( [nome] => Leonardo Ortega [usuario] => Ortega [nivel] => 2 )
Array ( [nome] => Leonardo Ortega [usuario] => Ortega [nivel] => 2 )
Responder
Clique aqui para fazer login e interagir na Comunidade :)