saludos amigos me estoy migrando a PDO y he tratado de hacer este archivo para validar las sesiones de usuarios pero tengo un problema que se me activan las alertas de los mensajes al darle click al boton aceptar pero el problema es que el user y el pass estan bien, si estuviera mal puesto cualquiera de los dos datos tendría que dar la alerta a lo que correspondes pero no es así. no se si es que estoy haciendo algo mal o me falta algo pero ya o veo donde tengo el error, si podrían echarme una manito se los agradecería ah otra cosa y si es posible mejorar un poco mas la seguridad o estaría bien así, siempre es bien tomar consejos de otras personas
Código:
¡ Ups Aviso: Usuario Incorrecto !
¡ Ups Aviso: Contraseña incorrecta !
¡ Ups Aviso: Contraseña incorrecta !
¡ Ups Aviso: Contraseña incorrecta !
Código PHP:
Ver original<?php
include("conexion/conexion.php");
$user = $_POST['user'];
$password = $_POST['password'];
$user_check = $DB_con->prepare('SELECT user FROM user WHERE user = :user LIMIT 1');
$user_check->bindParam(':user', $_POST['user']);
$user_check->execute();
if($user_check->rowCount() > 0){ ?>
<div class='col s12 card-panel blue lighten-2 center'>
<h5 class='black-text text-darken-2 center CONDENSED LIGHT5'>¡ Ups Aviso: Usuario Incorrecto !
</h5>
<?php header("refresh:5;login.php"); ?> </div>
<?php
}
$hash_password= hash('sha256', $_POST['password']); $sql = $DB_con->prepare('SELECT * FROM user WHERE user = :user AND
password = :password AND idnivel = \'Administrador\' LIMIT 1');
$sql->bindParam(':user', $_POST['user']);
$sql->bindParam(':password', $_POST['password']);
$sql->execute();
$sql->closeCursor();
if($sql->rowCount()){
$_SESSION['id'] = $id;
$_SESSION['correo'] = $correo;
$_SESSION['idnivel'] = 'Administrador';
$_SESSION['Administrador'] = $clave;
$_SESSION['nombres'] = $row['nombres'] . ' ' . $row['apellidos'];
?>
<?php header("Location: admin/home.php"); ?>
<?php } else { ?>
<div class='col s12 card-panel blue lighten-2 center'>
<h5 class='black-text text-darken-2 center CONDENSED LIGHT5'>¡ Ups Aviso: Contraseña incorrecta !
</h5>
<?php header("refresh:5;login.php"); ?> </div>
<?php
}
$hash_password= hash('sha256', $_POST['password']); $sql = $DB_con->prepare('SELECT * FROM user WHERE user = :user AND
password = :password AND idnivel = \'Usuarios\' LIMIT 1');
$sql->bindParam(':user', $_POST['user']);
$sql->bindParam(':password', $_POST['password']);
$sql->execute();
$sql->closeCursor();
if($sql->rowCount()){
$_SESSION['id'] = $id;
$_SESSION['correo'] = $correo; //muestra el login
$_SESSION['idnivel'] = 'Secretarias'; //muestra el nivel del usuario
$_SESSION['Secretarias'] = $correo;
$_SESSION['nombres'] = $row['nombres'] . ' ' . $row['apellidos'];
$_SESSION['cedula'] = $row['cedula'];
?>
<?php header("Location: secretaria/home.php"); ?>
<?php } else { ?>
<div class='col s12 card-panel blue lighten-2 center'>
<h5 class='black-text text-darken-2 center CONDENSED LIGHT5'>¡ Ups Aviso: Contraseña incorrecta !
</h5>
<?php header("refresh:5;login.php"); ?> </div>
<?php
}
$hash_password= hash('sha256', $_POST['password']); $sql = $DB_con->prepare('SELECT * FROM user WHERE user = :user AND
password = :password AND idnivel = \'Secretarias\' LIMIT 1');
$sql->bindParam(':user', $_POST['user']);
$sql->bindParam(':password', $_POST['password']);
$sql->execute();
if($sql->rowCount()){
$_SESSION['id'] = $id;
$_SESSION['correo'] = $correo;
$_SESSION['idnivel'] = 'Usuarios';
$_SESSION['Usuarios'] = $correo;
$_SESSION['nombre'] = $row['nombre'] . ' ' . $row['apellido'];
?>
<?php header("Location: usuarios/home.php"); ?>
<?php } else { ?>
<div class='col s12 card-panel blue lighten-2 center'>
<h5 class='black-text text-darken-2 center CONDENSED LIGHT5'>¡ Ups Aviso: Contraseña incorrecta !
</h5>
<?php header("refresh:5;login.php"); ?> </div>
<?php
}
$sql = null;
$DB_con = null;
?>