PHP - inicio de sesión mvc php con roles

 
Vista:
sin imagen de perfil
Val: 8
Ha aumentado su posición en 19 puestos en PHP (en relación al último mes)
Gráfica de PHP

inicio de sesión mvc php con roles

Publicado por jo12 (5 intervenciones) el 08/11/2019 06:51:13
Estoy con un sistema en cual tengo 2 usuarios administrador y cliente, y quiero dar acceso a cada pagina según su rol, por el momento tengo que valide el usuario y contraseña pero el cliente sigue con acceso a la vista administrativa

Este es mi controlador del login:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
public function Autenticar() {
 
    $usuario = $_REQUEST['usuario'];
    $contrasena = ($_REQUEST[('contrasena')]);
    $validar = $this->model->Verificar($usuario, $contrasena);
 
    if ($validar) {
        $_SESSION['usuario']=$usuario;
        $_SESSION['idCategoriaUsu']=$validar->UsuarioDatos['idCategoriaUsu'];
 
        $_SESSION['Iniciada']='true';
 
 
       if($_SESSION['idCategoriaUsu'] == 1){
 
        header('Location:index.php?c=Home');
       }
       else {
 
        header('Location:index.php?c=ClienteNormal');
       }
    } else {
 
        header('Location: index.php?c=Login&error=true');
    }
 
}

Este mi función verificar del modelo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
public function Verificar($usuario, $contrasena) {
 
    try {
       $sql = "SELECT * FROM usuarios WHERE usuario = ? AND contrasena = ?" ;
        $stm = $this->pdo->prepare($sql);
        $stm->execute(array($usuario, $contrasena));
 
        $UsuarioDatos = $stm->fetch(PDO::FETCH_OBJ);
 
 
        return $UsuarioDatos;
 
    } catch (Exception $ex) {
        die($ex->getMessage());
    }
}
No logro hacer que haga la verificación que si idCategoriaUsu ==1 lo dirija a la vista administrativa, lo que esta pasando es que entra directamente a este else:

1
2
3
4
else {
 
    header('Location:index.php?c=ClienteNormal');
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder