Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Memasukkan Berbilang Kotak Semak Berbilang dan Nilai Tatasusunan Kotak Teks ke dalam Pangkalan Data MySQL Menggunakan PHP?

Bagaimana untuk Memasukkan Berbilang Kotak Semak Berbilang dan Nilai Tatasusunan Kotak Teks ke dalam Pangkalan Data MySQL Menggunakan PHP?

Barbara Streisand
Barbara Streisandasal
2024-11-28 15:51:12213semak imbas

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

Memasukkan Data Tatasusunan ke dalam Pangkalan Data MySQL

Dalam PHP, memasukkan berbilang kotak semak dan nilai tatasusunan kotak teks ke dalam pangkalan data MySQL boleh menjadi mencabar. Berikut ialah beberapa masalah yang dihadapi dan penyelesaiannya:

Salah Jajaran Pilihan Kotak Pilihan

Isu dengan memaparkan semua nilai kotak semak, walaupun yang tidak bertanda, berpunca daripada pengendalian tatasusunan yang salah. Untuk mengatasinya, indeks nama kotak semak secara eksplisit. Contohnya:

<input type="checkbox" name="checkbox[0]" value="17" />

Ini memastikan surat-menyurat langsung antara indeks kotak pilihan dan item dan nilai kuantiti yang sepadan.

Tiada Sisipan Pangkalan Data

Walaupun mewujudkan sambungan pangkalan data, nampaknya terdapat masalah dengan sisipan data sebenar. Penggunaan fungsi MySQL yang salah dikenal pasti sebagai puncanya.

API MySQL dan MySQL tidak boleh dicampur. Daripada menggunakan mysql_query, gunakan kaedah $conn->query() yang sesuai untuk operasi pangkalan data.

Contoh Kod

$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();
}

Pertimbangan Tambahan

  • Simpan harga dalam pangkalan data dan bukannya HTML untuk mengelakkan potensi manipulasi.
  • Gunakan pernyataan yang disediakan untuk melindungi daripada suntikan SQL.
  • Jika anda menggunakan MySQLi, gantikan $conn->query() dengan mysqli_query($conn, $query);.

Atas ialah kandungan terperinci Bagaimana untuk Memasukkan Berbilang Kotak Semak Berbilang dan Nilai Tatasusunan Kotak Teks ke dalam Pangkalan Data MySQL Menggunakan PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn