37 EDITAR datos de los PRODUCTO desde el FORMULARIO del Sistema de Ventas con (PHP y MySql)FullStack

Duración: 18 min
Módulo: 📦 Gestión de Productos y Categorías Lección 12 de 15

Descripción

Lección 37: Edición de Datos de Productos (Vista EDITAR) ✏️

Esta lección se centra en la implementación de la acción "Editar" (Update) para el módulo de productos, utilizando el formulario de creación como base y adaptándolo para mostrar los datos existentes, permitiendo su modificación.

1. 🏗️ Configuración de la Vista de Edición

La funcionalidad de edición requiere una nueva vista que reutilice la lógica de visualización de datos:

  • Creación de la Vista: Se crea el archivo update.php y se modifica el enlace de la acción "Editar" (<a href>) en la tabla principal para que apunte a esta vista, pasando el ID del producto a través de la URL [01:09].
  • Reutilización de Código: La vista update.php se inicializa copiando el contenido de la vista de creación (create.php) [02:00].
  • Reaprovechamiento del Controlador: Se llama al mismo controlador cargar_producto.php (que ya trae los datos específicos de un ID), eliminando la necesidad de crear un nuevo controlador para la búsqueda de datos [02:48].

2. 📝 Carga y Preselección de Datos

Se llenan todos los campos del formulario con la información actual del producto, haciéndolos editables:

  • Código de Producto: Se reemplaza la función de generación automática del código por el valor del código existente en la base de datos, aunque el campo debe permanecer deshabilitado [05:13].
  • Llenado General de Campos: Se imprimen los valores de la base de datos en el atributo value de cada campo (nombre, stock, precios, fecha_ingreso, etc.) [10:27]. Se introdujo la sintaxis simplificada de PHP <?= ... ?> para imprimir valores, haciéndola más limpia [13:08].
  • Preselección de Categoría: Para el SELECT de Categorías, se utiliza una lógica condicional (similar a la usada para Roles de Usuario) dentro del bucle foreach que lista las opciones. Si el nombre de la categoría listada coincide con la categoría actual del producto, se añade el atributo selected a esa opción, garantizando que el combobox muestre la categoría correcta por defecto [08:44].

3. 🖼️ Manejo de la Imagen Existente

Se realizaron ajustes en la gestión de la imagen para asegurar una correcta previsualización y reemplazo:

  • Imagen Previsualizada: La imagen actual del producto se inserta dentro del elemento <output> que gestiona la previsualización. Esto asegura que la imagen se cargue al abrir la vista [15:28].
  • Reemplazo Funcional: Al estar la imagen existente dentro del contenedor <output>, el script de JavaScript que se usa para la previsualización es capaz de reemplazarla inmediatamente con una nueva imagen seleccionada por el usuario (desde el input file), mejorando la experiencia del usuario [16:30].

4. 🚀 Próximo Paso (Backend)

Con la vista lista para mostrar y permitir la edición de datos, el siguiente paso es crear el controlador que procesará el formulario y ejecutará la consulta UPDATE en la base de datos para persistir los cambios [17:39].