Advertisement
Guest User

Erros

a guest
May 16th, 2018
131
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 3.48 KB | None | 0 0
  1. <?php
  2.  
  3. function usuarioExiste($usuario_docente, $senha_docente) {
  4.  
  5.     $return = NULL;
  6.  
  7.     $mensagem = NULL;
  8.  
  9.     $conexao = Conexao::getInstance();
  10.  
  11.     $sql = 'SELECT * FROM docente WHERE usuario_docente = :usuario_docente AND senha_docente = :senha_docente';
  12.  
  13.     try {
  14.         $stmt = $conexao->prepare($sql);
  15.         $stmt->bindValue( ':usuario_docente', $usuario_docente, PDO::PARAM_STR);
  16.         $stmt->bindValue( ':senha_docente', $senha_docente, PDO::PARAM_STR);
  17.         $stmt->execute();
  18.         $_SESSION['user'] = $stmt->fetch(PDO::FETCH_OBJ);
  19.         $return = ($stmt->rowCount() > 0 ) ? TRUE : FALSE;
  20.     } catch (Exception $e) {
  21.             die($e->getMessage());
  22.     }finally{
  23.         $conexao = Conexao::close();
  24.         return $return;
  25.     }
  26.    
  27. }
  28.  
  29.  
  30. if ($_SERVER['REQUEST_METHOD'] == 'POST') {
  31.     // Não entendi sua lógica aqui
  32.     // Primeiro vc verifica se usuario é ADMIN e se a senha é essa FIXA '21232f297a57a5a743894a0e4a801fc3' e se o usuário existe
  33.     // ?????
  34.     // Se é ADMIN, lógico que vai existir, não?
  35.     // Vou deixar comentado como eu acho que deveria ser
  36.     // Voce ta repetindo codigo aqui tmb, sendo que em ambas as condicoes vc armazena SESSION. Unica coisa que muda é o redirecionamento
  37.     if ($usuario_docente =='admin' && $senha_docente == '21232f297a57a5a743894a0e4a801fc3' && usuarioExiste($usuario_docente, $senha_docente)) {
  38.         $_objUsuario = $_SESSION['user'];
  39.         $_SESSION['id_docente'] = $_objUsuario->id_docente;
  40.         $_SESSION['nome_docente'] = $_objUsuario->nome_docente;
  41.         $_SESSION['usuario_docente'] = $_objUsuario->usuario_docente;
  42.         $_SESSION['senha_docente'] = $_objUsuario->senha_docente;
  43.         $_SESSION['status'] = $_objUsuario->status;
  44.        
  45.         header("Location: index.admin.php");
  46.  
  47.     // Aqui tmb não entendi
  48.     // Você verifica se usuario exite e se usuário é diferente de ADMIN e senha ADMIN.... Mas a senha não era 21232f297a57a5a743894a0e4a801fc3 ???
  49.     }elseif (usuarioExiste($usuario_docente, $senha_docente) && !($usuario_docente =='admin' && $senha_docente == 'admin' )){
  50.         $_objUsuario = $_SESSION['user'];
  51.         $_SESSION['id_docente'] = $_objUsuario->id_docente;
  52.         $_SESSION['nome_docente'] = $_objUsuario->nome_docente;
  53.         $_SESSION['usuario_docente'] = $_objUsuario->usuario_docente;
  54.         $_SESSION['senha_docente'] = $_objUsuario->senha_docente;
  55.         $_SESSION['status'] = $_objUsuario->status;
  56.         header("Location: index.docente.php");
  57.  
  58.         // Die mensagem ?????
  59.         // Você não declarou a variavel mensagem em escopo global, como vc quer recuperar ela aqui?
  60.         // Vc tmb nem setou o valor da mensagem kkkkkk
  61.         // Olha, vc declarou ela dentro da função, então a varíavel so vai ser executada dentro daquele bloco da função, se vc quiser usar a variavel mensagem em todo o arquivo, deve-se declarar ela no inicio
  62.        
  63.         // Aqui ela vai ser nula, pq vc nao declarou ela global e nao setou o valor dela
  64.         die($mensagem);
  65.  
  66.     // Aqui foi o pior erro de todos
  67.     // Você ta verificando se $status é igual a Desativado ... Onde vc declarou essa variável? Onde vc setou valor a ela? Nesse arquivo nao tem nada
  68.     // E outra, se cair nas condições acima, nunca, mas nunca mesmo vai cair aqui pq é uma condição ou outra.
  69.     }elseif ($status == 'Desativado') {
  70.         $mensagem = "Docente desativado!";
  71.     }else{
  72.         $mensagem = "Dados incorretos ou incompletos!";
  73.     }
  74.  
  75. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement