Memasukkan Data dengan mysqli: Menyelesaikan Masalah Sisipan Gagal
Atur cara ini cuba memasukkan data ke dalam pangkalan data MySQL menggunakan sambungan mysqli. Walau bagaimanapun, walaupun berjaya melalui pusat pemeriksaan nyahpepijat, data tidak ditambahkan pada jadual.
Isunya terletak pada cara pembolehubah terikat pada pernyataan yang disediakan. Dalam kod asal, pembolehubah $nama pengguna dan $kata laluan diikat dua kali menggunakan bind_param(). Ini tidak betul. Sintaks yang betul ialah menghantar jenis data diikuti oleh pembolehubah dalam satu panggilan ke bind_param().
Untuk membetulkannya, kod boleh diubah suai seperti berikut:
$stmt2->bind_param('ss', $username, $password);
Sebagai alternatif, jika menggunakan PHP 5.6 atau lebih baru, tatasusunan pembolehubah boleh dihantar ke bind_param() menggunakan spread operator:
$data = ['username' => 'someUser', 'password' => 'secret']; $stmt2->bind_param('ss', ...$data);
Setelah pembetulan ini dibuat, pertanyaan INSERT seharusnya berjaya dilaksanakan dan memasukkan baris baharu ke dalam pangkalan data.
Atas ialah kandungan terperinci Mengapa Sisipan mysqli Saya Gagal Walaupun Melepasi Pusat Pemeriksaan Nyahpepijat?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!