Heim  >  Artikel  >  Backend-Entwicklung  >  Wie aktualisiere ich mehrere Zeilen in einer MySQL-Datenbank mithilfe einer einzigen Formularübermittlung?

Wie aktualisiere ich mehrere Zeilen in einer MySQL-Datenbank mithilfe einer einzigen Formularübermittlung?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-11-06 02:30:02647Durchsuche

How to Update Multiple Rows in a MySQL Database Using a Single Form Submission?

Formular veröffentlichen und mehrere Zeilen mit MySQL aktualisieren

In diesem Szenario möchten wir ein Formular erstellen, das es Backend-Benutzern ermöglicht, die Titel zu ändern und Tags mehrerer Fotos, die einer bestimmten Galerie zugeordnet sind. Nach dem Absenden des Formulars sollten diese Änderungen gleichzeitig auf alle ausgewählten Zeilen in der Datenbank angewendet werden.

Formularstruktur

Der bereitgestellte Code ruft mithilfe der Galerie-ID Fotos aus der Datenbank ab und zeigt sie als Formular mit Eingabefeldern für Titel und Tags an. Diese Felder sind mit versteckten Eingaben verknüpft, die den Lichtbildausweis enthalten.

// Fetch photos from the database
$result = $db->prepare("SELECT * FROM photos WHERE gallery_id = :gallery_id ");
$result->bindParam(':gallery_id', $id);
$result->execute();

// Generate input fields for each photo
echo '<form action="" method="POST">';
echo "<ul id='photos'>";

for ($i = 0; $row = $result->fetch(); $i++) {
    // Get photo details
    $id = $row['id'];
    $title = $row['title'];
    $tags = $row['tags'];
    $src = $row['src'];

    // Create input fields
    echo "<li><a class='lightbox' href='images/$src'><img src='images/$src' id='$id' alt='$title' /></a><br />";
    echo "<input type='text' name='photo_title[]' value='$title' /><br />"; // ***** Adjusted the array submission *****
    echo "<input type='text' name='photo_tags[]' value='$tags' /><br />"; // ***** Adjusted the array submission *****
    echo "<input type='hidden' name='photo_id[]' value='$id' />"; // ***** Adjusted the array submission *****
    echo "</li>";
}

echo "</ul>";
echo '<div style="clear:both"></div>';

Das obige ist der detaillierte Inhalt vonWie aktualisiere ich mehrere Zeilen in einer MySQL-Datenbank mithilfe einer einzigen Formularübermittlung?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn