Actualización de varias filas de MySQL con datos de formulario
En el desarrollo web, es común tener un formulario donde los usuarios pueden editar registros de una base de datos. Un escenario común es actualizar varias filas en la misma tabla con datos modificados. Esto se puede lograr usando PHP y MySQL.
Estructura del formulario y recuperación de datos
El formulario inicial es responsable de presentar los datos a editar. En este ejemplo, el formulario recupera todas las fotos con un GALLERY_id específico de la base de datos y las muestra con campos para modificar el título y las etiquetas de la foto.
Envío de datos y actualizaciones
Cuando se envía el formulario, los datos se envían a un script PHP para su procesamiento. El script utiliza el bucle foreach para iterar sobre los datos publicados y extraer los valores de identificación con foto, título y etiquetas.
Actualización de filas con declaraciones preparadas
La siguiente El paso es actualizar las filas coincidentes en la base de datos. Para ello, se utiliza una declaración preparada. Implica:
Recorriendo matrices de formulario
Para permitir que se actualicen varias filas, los campos del formulario HTML se envían como matrices. Esto se logra usando la notación [] en los nombres de los campos:
echo "En el script PHP, se accede a estas matrices mediante el bucle foreach, lo que permite que el script itere sobre los datos y actualice cada fila en consecuencia.
Código de ejemplo
El script PHP actualizado se vería así:
foreach ($_POST['photo_id'] as $key => $photo_id) { $id = $photo_id; $title = $_POST['photo_title'][$key]; $tags = $_POST['photo_tags'][$key]; $sql = "UPDATE photos SET title=?, tags=? WHERE id=?"; $query = $db->prepare($sql); $query->execute(array($title, $tags, $id)); }
Si sigue estos pasos, puede publicar datos de formularios de manera efectiva y actualizar varias filas en una tabla MySQL.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3