Rumah >pangkalan data >tutorial mysql >Mengapa Sisipan mysqli Saya Gagal Walaupun Melepasi Pusat Pemeriksaan Nyahpepijat?

Mengapa Sisipan mysqli Saya Gagal Walaupun Melepasi Pusat Pemeriksaan Nyahpepijat?

Linda Hamilton
Linda Hamiltonasal
2024-12-20 12:53:27366semak imbas

Why is My mysqli Insert Failing Despite Passing Debug Checkpoints?

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!

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