Ver Mensaje Individual
  #10 (permalink)  
Antiguo 12/12/2016, 14:56
xerifandtomas
 
Fecha de Ingreso: octubre-2010
Ubicación: España
Mensajes: 1.007
Antigüedad: 14 años, 5 meses
Puntos: 123
Respuesta: error, me activan los mensaje al validar la sesion

Buenas noches.

Te dejo el ejemplo por aquí, obviamente no lo he probado y puede que contenga algún error, pero creo que te puedes hacer una idea.

Hay algunas variables que no se a que hacen referencia y simplemente las he comentado y otras que he supuesto que extraes de la base de datos pero no estoy seguro ya que en el código que pasaste no estaban definidas en ningún lugar.

Espero que te sea de ayuda.

Un saludo.

Código PHP:
<?php
include("conexion/conexion.php");

// Preparamos la consulta y la ejecutamos 
$sql $DB_con->prepare('SELECT * FROM user WHERE user = :user AND password = :password LIMIT 1');
$sql->bindParam(':user'$_POST['user']);
$sql->bindParam(':password'hash('sha256'$_POST['password']));
$sql->execute();
$sql->closeCursor();
// Comprobamos si ha devuelto algun registro
if($sql->rowCount()>0){
    
// Inicimaos sesion
    
session_start();
    
// Recuperamos los datos de la consulta 
    
$row $sql->fetch(PDO::FETCH_ASSOC);
    
//definimos las variables necesarias para la sesion
    
$_SESSION['id'] = $row['id'];
    
$_SESSION['correo'] = $row['correo'];
    
$_SESSION['idnivel'] = $row['idnivel'];
    
$_SESSION['nombres'] = $row['nombres'].' ' .$row['apellidos'];
    
$_SESSION['cedula'] = $row['cedula'];
    
// Redirigimos la pagina segun idnivel
    
switch ($_SESSION['idnivel']) {
        case 
'Administrador':
            
header("Location: admin/home.php");
            exit;
            break;
        case 
'Usuarios':
            
header("Location: usuarios/home.php");
            exit;
            break;
        case 
'Secretarias':
            
header("Location: secretaria/home.php");
            exit;
            break;
        
// Definimos que hacemos en caso de no detectar ningun idnivel valido
        
default:
            
header("refresh:5;login.php");
            
?>
            <div class='col s12 card-panel blue lighten-2 center'>
            <h5 class='black-text text-darken-2 center CONDENSED LIGHT5'>¡ No se pudo determinar el nivel del usuario !</h5>
            </div>
            <?php
            session_destroy
();
            exit;
            break;
    }
    
/* Estas 3 variables no se a que hacen referencia ni de donde salen */
    /*
    $_SESSION['Administrador'] = $clave;
    $_SESSION['Secretarias'] = $correo;
    $_SESSION['Usuarios'] = $correo;
    */
}
// Definimos que hacemos en caso de que la consulta no haya devuelto ningun resultado
// Es decir en caso de que la contraseña y el usuario sean incorrectos
else{
    
header("refresh:5;login.php"); 
    
?>
    <div class='col s12 card-panel blue lighten-2 center'>
    <h5 class='black-text text-darken-2 center CONDENSED LIGHT5'>¡ Ups Aviso: Contraseña o usuario incorrectos !
    </h5>
    </div> 
    <?php
    
exit;
}
:
__________________
Unset($vida['malRollo']);