Array-Daten in MySQL-Datenbank einfügen
In PHP kann das Einfügen mehrerer Kontrollkästchen- und Textfeld-Array-Werte in eine MySQL-Datenbank eine Herausforderung sein. Hier sind einige aufgetretene Probleme und ihre Lösungen:
Fehlausrichtung der Kontrollkästchenauswahl
Das Problem bei der Anzeige aller Kontrollkästchenwerte, auch nicht markierter, ist auf eine falsche Array-Verarbeitung zurückzuführen. Um dies zu umgehen, indizieren Sie die Kontrollkästchennamen explizit. Zum Beispiel:
<input type="checkbox" name="checkbox[0]" value="17" />
Dies stellt eine direkte Entsprechung zwischen Kontrollkästchenindizes und den entsprechenden Artikel- und Mengenwerten sicher.
Fehlende Datenbankeinfügung
Trotz Beim Herstellen einer Datenbankverbindung scheint es ein Problem mit der eigentlichen Dateneinfügung zu geben. Als Übeltäter wird die fehlerhafte Verwendung von MySQL-Funktionen identifiziert.
MySQLi und MySQL-APIs sollten nicht vermischt werden. Verwenden Sie anstelle von mysql_query die entsprechende $conn->query()-Methode für Datenbankoperationen.
Codebeispiel
$stmt = $conn->prepare("INSERT INTO purchases (Product, Quantity, Price) VALUES (?, ?, ?)"); $stmt->bind_param("sis", $name, $quantity, $price); foreach ($_POST['checkbox'] as $i => $price) { $name = $_POST['name'][$i]; $quantity = $_POST['quantity'][$i]; $stmt->execute(); }
Zusätzliche Überlegungen
Das obige ist der detaillierte Inhalt vonWie fügt man mit PHP effizient mehrere Checkbox- und Textbox-Array-Werte in eine MySQL-Datenbank ein?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!