19 CRUD - DELETE de USUARIOS del Sistema de Ventas con (PHPyMySql) FullStack

Duración: 16 min
Módulo: 👤 CRUD de Usuarios y Roles (Seguridad Lógica) Lección 11 de 17

Descripción

Lección 19: CRUD - Eliminación (DELETE) de Usuarios 🗑️

Esta lección se enfoca en implementar la última operación fundamental del CRUD: la Eliminación (DELETE) de registros de usuarios, garantizando la seguridad y la usabilidad del sistema.

1. 🔍 Pre-Validación: Campos Requeridos

Antes de proceder con la eliminación, el video realiza una corrección esencial para evitar el ingreso de datos incompletos en el sistema:

  • Atributo required: Se añade el atributo required a los campos de input del formulario en las vistas de Creación (create.php) y Actualización (update.php).
  • Propósito: Esto obliga al navegador a validar que los campos obligatorios (nombre y correo en el caso de edición, y las contraseñas en la creación) sean llenados, evitando la inserción de "información basura" en la base de datos [01:40].

2. 🗑️ Implementación de la Acción "Eliminar" (Delete)

La acción de eliminar se implementa mediante un proceso de confirmación antes de la ejecución de la sentencia SQL.

a. Vista de Confirmación (delete.php)

  1. Enlace del Botón: El botón "Borrar" en la tabla se enlaza a la nueva vista delete.php, enviando el ID del usuario a borrar a través de la URL (método GET) [01:00].
  2. Vista Adaptada: Se reutiliza la estructura de la vista show.php (Ver datos), pero se adapta con el color rojo (btn-danger) para indicar peligro o eliminación [07:06].
  3. Mensaje de Seguridad: La vista muestra los datos del usuario y pregunta al administrador si "Está seguro de eliminar al usuario" [07:16].
  4. Formulario y ID Oculto:
    • Se crea un formulario que envíe los datos al controlador de eliminación.
    • Al igual que en la edición, se incluye un input de tipo oculto (type="hidden") que contiene únicamente el ID del usuario a borrar [10:04].

b. Controlador de Ejecución (delete_usuarios.php)

  1. Recepción del ID: El controlador recibe el ID del usuario a través del método POST desde el formulario de confirmación [11:13].
  2. Sentencia SQL (DELETE): Se construye la sentencia SQL para borrar el registro. La clave de esta operación es la condición WHERE [09:42]:

    SQL

    DELETE FROM usuarios WHERE id_usuario = :id_usuario

    • ⚠️ Advertencia Crítica: Se enfatiza que, sin la cláusula WHERE, la sentencia eliminaría todos los registros de la tabla, lo cual es un error catastrófico en producción [13:10].
  3. Ejecución y Notificación: Si la sentencia se ejecuta correctamente, el sistema envía una notificación SweetAlert de éxito (icon: success) con el mensaje "Se eliminó al usuario de la manera correcta" y redirige al listado (index.php) [12:44].

Con la implementación de la acción de Eliminar [14:37], se concluye el módulo completo de gestión de usuarios (CRUD), permitiendo crear, ver, editar y borrar registros de forma segura y controlada.