Maison > base de données > tutoriel mysql > Comment mettre à jour efficacement plusieurs lignes MySQL à partir d'un seul formulaire HTML ?

Comment mettre à jour efficacement plusieurs lignes MySQL à partir d'un seul formulaire HTML ?

DDD
Libérer: 2024-12-01 18:32:11
original
435 Les gens l'ont consulté

How to Efficiently Update Multiple MySQL Rows from a Single HTML Form?

Soumission et mise à jour de plusieurs lignes dans MySQL

Problème :

Vous disposez d'un formulaire qui collecte des données pour plusieurs enregistrements de photos , permettant à l'utilisateur de modifier ses titres et ses balises. L'objectif est de mettre à jour tous les enregistrements sélectionnés dans la base de données.

Structure du formulaire :

Dans le formulaire, vous avez des champs pour chaque enregistrement photo :

<input type="text" name="photo_title[]" value="$title" />
<input type="text" name="photo_tags[]" value="$tags" />
<input type="hidden" name="photo_id[]" value="$id" />
Copier après la connexion

Mettre à jour Requête :

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>
Copier après la connexion

Solution :

Au lieu d'utiliser des champs de saisie individuels portant les mêmes noms, vous devez utiliser des tableaux dans les champs du formulaire. Cela vous permet de capturer plusieurs valeurs et de les parcourir dans les données POST. Ensuite, vous pouvez mettre à jour chaque ligne individuellement à l'aide d'une instruction préparée et des valeurs du tableau.

Cette approche garantit que tous les enregistrements sélectionnés sont mis à jour avec les nouvelles valeurs de titre et de balise.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal