Mengapa Sisipan MySQLi Saya Gagal Walaupun Lulus Semua Pemeriksaan Nyahpepijat?

Mary-Kate Olsen
Lepaskan: 2024-11-15 17:55:02
asal
200 orang telah melayarinya

Why is My MySQLi Insertion Failing Despite Passing All Debug Checks?

Memasukkan Data menggunakan MySQLi

Kod ini nampaknya sedang melaksanakan semua semakan nyahpepijat, tetapi ia gagal memasukkan data baharu ke dalam pangkalan data. Mari kita analisa langkah demi langkah.

Kod cuba menyemak sama ada "nama pengguna" sudah wujud dalam jadual "UserData". Jika tidak, ia cuba menambah baris baharu. Walau bagaimanapun, ia menghadapi isu semasa bahagian sisipan.

Mengenal pasti Isu

Masalahnya terletak pada cara parameter bind diisytiharkan untuk pernyataan sisipan. Daripada menghantar pembolehubah individu berbilang kali (cth., $nama pengguna, $kata laluan dua kali), ia harus dihantar bersama-sama dengan jenis yang sepadan.

Penyelesaian

Fungsi bind_param menjangkakan jenis pembolehubah mendahului pembolehubah itu sendiri. Oleh itu, cara yang betul untuk mengikat parameter ialah:

$stmt2->bind_param('ss', $username, $password);
Salin selepas log masuk

Sebagai alternatif, jika anda menggunakan PHP 5.6 atau lebih baru, anda boleh memudahkan ini menggunakan operator spread (...):

$data = ['user' => 'someUser', 'password' => 'secret'];
$stmt2->bind_param('ss', ...$data);
Salin selepas log masuk

Setelah parameter diikat dengan betul, sisipan akan berjaya. Ambil perhatian bahawa kod yang disediakan dalam soalan anda mempunyai beberapa ulasan yang berkemungkinan mengelirukan atau tidak diperlukan; mengalih keluarnya untuk kejelasan adalah disyorkan.

Atas ialah kandungan terperinci Mengapa Sisipan MySQLi Saya Gagal Walaupun Lulus Semua Pemeriksaan Nyahpepijat?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan