Heim  >  Artikel  >  Backend-Entwicklung  >  Wie aktualisiere ich mehrere MySQL-Zeilen mit Formulardaten mithilfe von PHP?

Wie aktualisiere ich mehrere MySQL-Zeilen mit Formulardaten mithilfe von PHP?

Susan Sarandon
Susan SarandonOriginal
2024-11-07 06:43:03484Durchsuche

How to Update Multiple MySQL Rows with Form Data Using PHP?

Aktualisieren mehrerer MySQL-Zeilen mit Formulardaten

In der Webentwicklung ist es üblich, ein Formular zu haben, in dem Benutzer Datensätze aus einer Datenbank bearbeiten können. Ein häufiges Szenario ist die Aktualisierung mehrerer Zeilen in derselben Tabelle mit geänderten Daten. Dies kann mit PHP und MySQL erreicht werden.

Formularstruktur und Datenabruf

Das Ausgangsformular ist für die Darstellung der zu bearbeitenden Daten verantwortlich. In diesem Beispiel ruft das Formular alle Fotos mit einer bestimmten GALLERY_id aus der Datenbank ab und zeigt sie mit Feldern zum Ändern des Fototitels und der Tags an.

Datenübermittlung und -aktualisierungen

Beim Absenden des Formulars werden die Daten zur Verarbeitung an ein PHP-Skript gesendet. Das Skript verwendet die foreach-Schleife, um die veröffentlichten Daten zu durchlaufen und die Werte für Foto-ID, Titel und Tags zu extrahieren.

Zeilen mit vorbereiteten Anweisungen aktualisieren

Das nächste Der Schritt besteht darin, die übereinstimmenden Zeilen in der Datenbank zu aktualisieren. Hierzu wird eine vorbereitete Stellungnahme verwendet. Es umfasst:

  1. Vorbereiten einer SQL-Abfrage mit Platzhaltern für die zu aktualisierenden Werte.
  2. Verknüpfen der Platzhalterwerte mit den tatsächlichen Daten.
  3. Ausführen der Abfrage für jede Zeile in der Schleife.

Schleife über Formulararrays

Um die Aktualisierung mehrerer Zeilen zu ermöglichen, werden die HTML-Formularfelder als Arrays übermittelt. Dies wird durch die Verwendung der []-Notation in Feldnamen erreicht:

echo "<input type='text' name='photo_title[]' value='$title' />";

Im PHP-Skript wird auf diese Arrays mithilfe der foreach-Schleife zugegriffen, sodass das Skript die Daten durchlaufen und jede Zeile entsprechend aktualisieren kann.

Beispielcode

Das aktualisierte PHP-Skript würde so aussehen:

<code class="php">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));
}</code>

Indem Sie diese Schritte befolgen, können Sie Formulardaten effektiv veröffentlichen und Aktualisieren Sie mehrere Zeilen in einer MySQL-Tabelle.

Das obige ist der detaillierte Inhalt vonWie aktualisiere ich mehrere MySQL-Zeilen mit Formulardaten mithilfe von PHP?. 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