Heim >Datenbank >MySQL-Tutorial >Wie aktualisiere ich effizient mehrere MySQL-Zeilen aus einem einzigen HTML-Formular?

Wie aktualisiere ich effizient mehrere MySQL-Zeilen aus einem einzigen HTML-Formular?

DDD
DDDOriginal
2024-12-01 18:32:11510Durchsuche

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

Mehrere Zeilen in MySQL senden und aktualisieren

Problem:

Sie haben ein Formular, das Daten für mehrere Fotodatensätze sammelt , sodass der Benutzer seine Titel und Tags bearbeiten kann. Ziel ist es, alle ausgewählten Datensätze in der Datenbank zu aktualisieren.

Formularstruktur:

Im Formular gibt es Felder für jeden Fotodatensatz:

<input type="text" name="photo_title[]" value="$title" />
<input type="text" name="photo_tags[]" value="$tags" />
<input type="hidden" name="photo_id[]" value="$id" />

Aktualisieren Abfrage:

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>

Lösung:

Anstatt einzelne Eingabefelder mit gleichen Namen zu verwenden, sollten Sie Arrays in den Formularfeldern verwenden. Dadurch können Sie mehrere Werte erfassen und diese in den POST-Daten durchlaufen. Anschließend können Sie jede Zeile einzeln aktualisieren, indem Sie eine vorbereitete Anweisung und die Array-Werte verwenden.

Dieser Ansatz stellt sicher, dass alle ausgewählten Datensätze mit den neuen Titel- und Tag-Werten aktualisiert werden.

Das obige ist der detaillierte Inhalt vonWie aktualisiere ich effizient mehrere MySQL-Zeilen aus einem einzigen HTML-Formular?. 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