39 – SESIONES con USUARIOS desde la BASE de DATOS con(👨💻PHP y MYSQL💻)

Duración: 8 min
Módulo: 👥 Roles de Usuario y Control de Acceso Detallado Lección 11 de 12

Descripción

Lección 39 – SESIONES con USUARIOS desde la BASE de DATOS con(👨💻PHP y MYSQL💻)

En esta lección crucial, profundizarás en la gestión de sesiones de usuario para tu Sistema de Parqueo, asegurando que el estado del usuario logueado se mantenga a través de la base de datos. 🔐 Tu instructor te guiará para almacenar y recuperar la información del usuario de forma persistente, lo que es fundamental para mantener la seguridad y el flujo de trabajo en tu aplicación.

En esta Lección Estratégica Aprenderás a:

  • Comprender la Persistencia de las Sesiones con la Base de Datos 💡
    • Entenderás que, más allá de la simple $_SESSION de PHP, es necesario vincular la sesión con la base de datos para recuperar datos adicionales del usuario (como su nombre, rol, etc.) cada vez que se carga una página. Esto garantiza que la información del usuario esté siempre disponible y actualizada.
  • Modificar el Archivo de Datos de Sesión (datos_usuario_sesion.php) ⚙️
    • Abrirás el archivo datos_usuario_sesion.php (ubicado en app/layouts/admin), el cual fue creado en una lección anterior para mostrar el nombre del usuario.
    • Iniciar la Sesión de PHP: Te asegurarás de incluir session_start() al inicio de este archivo para que pueda acceder a las variables de sesión.
  • Recuperar el Email del Usuario desde la Sesión 📧
    • Capturarás el email del usuario que se almacenó en $_SESSION['usuario_sesion'] durante el proceso de login. Este email será la clave para consultar la información completa del usuario en la base de datos.
  • Crear el Controlador para Leer Datos del Usuario en Sesión (control_read_user_session.php) 📄
    • Dentro de la carpeta usuarios, crearás un nuevo controlador llamado control_read_user_session.php. Este será el encargado de consultar la base de datos para obtener todos los datos del usuario logueado.
    • Incluirás el archivo config.php en este controlador para asegurar la conexión a la base de datos y disponer de la variable $url.
  • Diseñar la Consulta SQL para un Usuario en Sesión 🔍
    • Escribirás una sentencia SQL SELECT * FROM tabla_usuarios WHERE email = :email, utilizando el email recuperado de la sesión para obtener el registro completo del usuario.
  • Ejecutar la Consulta y Almacenar los Resultados 🚀
    • Utilizarás la conexión PDO para preparar y ejecutar la consulta, recuperando los datos del usuario.
    • Estos datos se almacenarán en variables PHP dentro de datos_usuario_sesion.php (ej. $nombre_usuario_sesion, $email_usuario_sesion, $id_rol_sesion).
  • Mostrar el Nombre del Usuario Dinámicamente 👤
    • En el menu.php, donde se muestra el nombre del usuario, modificarás el código para que imprima la variable $nombre_usuario_sesion que ahora se carga desde la base de datos a través de datos_usuario_sesion.php.
  • Verificar la Persistencia de la Información
    • Navegarás por las diferentes páginas de tu panel administrativo después de iniciar sesión. Confirmarás que el nombre del usuario (y, en el futuro, otros datos relacionados con su rol) se muestra correctamente y persiste en todas las vistas, garantizando una experiencia de usuario consistente.

Al finalizar esta lección, habrás fortalecido la gestión de sesiones en tu Sistema de Parqueo, permitiendo que la información completa del usuario logueado se cargue dinámicamente desde la base de datos y se mantenga accesible en todo el panel administrativo. ¡Tu sistema ahora gestiona el estado del usuario de forma más inteligente y segura! 💪