Heim > Datenbank > MySQL-Tutorial > Wie fügt man mit PHP effizient mehrere Checkbox- und Textbox-Array-Werte in eine MySQL-Datenbank ein?

Wie fügt man mit PHP effizient mehrere Checkbox- und Textbox-Array-Werte in eine MySQL-Datenbank ein?

Barbara Streisand
Freigeben: 2024-11-28 15:51:12
Original
303 Leute haben es durchsucht

How to Efficiently Insert Multiple Checkbox and Textbox Array Values into a MySQL Database Using PHP?

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" />
Nach dem Login kopieren

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();
}
Nach dem Login kopieren

Zusätzliche Überlegungen

  • Preise in der Datenbank statt in HTML speichern, um Potenzial zu vermeiden Manipulation.
  • Verwenden Sie vorbereitete Anweisungen, um sich vor SQL-Injection zu schützen.
  • Wenn Sie MySQLi verwenden, ersetzen Sie $conn->query() durch mysqli_query($conn, $query);.

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!

Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage