Inicio de session

Llegamos a la hora de iniciar sesión en nuestra página.

Para llevar a cabo el inicio de sesión en el formulario login, verificamos que tenemos una action="procesar_inicio_sesion.php".

Esto nos indica que al hacer clic en el botón Iniciar Sesión, nos llevará al archivo procesar_inicio_sesion.php.

        <button type="submit" class="btn btn-primary">Iniciar Sesión</button>
    

Este archivo procesar_inicio_sesion.php verificará si el usuario, el email y también la contraseña coinciden con los datos que tenemos registrados.

Si coinciden, nos redirigirá a la página que indiquemos; de lo contrario, nos redirigirá nuevamente al inicio de sesión.



...

Código completo de procesar_inicio_sesion.php

    <?php
include_once('conexion.php');

if (isset($_POST['usuario_o_email'], $_POST['contrasena'])) {
    $usuario_o_email = $_POST['usuario_o_email'];
    $contrasena = $_POST['contrasena'];

    // Realiza la verificación de las credenciales en la base de datos
    $sql = "SELECT id, user, email, password FROM usuarios WHERE user = :usuario_o_email OR email = :usuario_o_email";
    $stmt = $pdo->prepare($sql);
    $stmt->bindParam(':usuario_o_email', $usuario_o_email);
    $stmt->execute();
    $usuarioBD = $stmt->fetch(PDO::FETCH_ASSOC);

    if ($usuarioBD && password_verify($contrasena, $usuarioBD['password'])) {
        // Las credenciales son válidas, inicia la sesión
        session_start();
        $_SESSION['id'] = $usuarioBD['id'];
        $_SESSION['usuario'] = $usuarioBD['user'];
        $_SESSION['email'] = $usuarioBD['email'];

        // Redirige al usuario a la página de lista de recetas
        header('Location: lista_recetas.php');
    } else {
        // Las credenciales son incorrectas, muestra un mensaje de error
        header('Location: index.php');
    }
} else {
    echo "Faltan datos en la solicitud.";
}
?>

Bueno, si observamos las entradas anteriores, vemos que hasta aquí hemos creado un sistema de inicio de sesión completo, además de registros de usuarios e inserción de sus fotografías.

También podemos ver que al registrar el usuario, su contraseña se encripta y se verifica al iniciar sesión.




Publicar un comentario

0 Comentarios