Rumah > pangkalan data > tutorial mysql > Bagaimanakah Saya Boleh Memaparkan Mesej Ralat MySQL Terperinci daripada Pertanyaan Input Pengguna PHP?

Bagaimanakah Saya Boleh Memaparkan Mesej Ralat MySQL Terperinci daripada Pertanyaan Input Pengguna PHP?

Patricia Arquette
Lepaskan: 2024-12-01 06:31:13
asal
467 orang telah melayarinya

How Can I Display Detailed MySQL Error Messages from PHP User Input Queries?

Memaparkan Ralat MySQL Terperinci untuk Pertanyaan Input Pengguna dalam PHP

Apabila melaksanakan pertanyaan MySQL yang bergantung pada input pengguna, ia boleh menjadi sukar untuk dikenal pasti punca kegagalan pertanyaan. Mesej ralat lalai "Query Failed" menyediakan sedikit maklumat untuk menyelesaikan masalah. Artikel ini meneroka kaedah untuk memaparkan mesej ralat khusus yang dikaitkan dengan kegagalan pertanyaan dalam PHP.

Memahami Kegagalan Pertanyaan

Kod sampel yang disediakan menunjukkan pertanyaan yang membina klausa WHERE secara dinamik berdasarkan pembolehubah input pengguna. Apabila pertanyaan gagal, mesej ralat hanyalah "Query Failed." Untuk mendapatkan ralat sebenar, kita perlu mengakses mesej ralat MySQL yang mendasari.

Menggunakan Fungsi mysqli_error

Fungsi mysqli_error PHP mendapatkan semula mesej ralat terakhir yang dihasilkan oleh MySQL pangkalan data. Dengan menyepadukan fungsi ini ke dalam kod kami, kami boleh memaparkan mesej ralat tertentu. Begini cara untuk melaksanakannya:

mysqli_query($this->db_link, $query) or die(mysqli_error($this->db_link)); 
Salin selepas log masuk

Contoh:

Dalam kod sampel yang disediakan, tambahkan baris di atas selepas $r = mysqli_query($this-> db_link, $query);:

$r = mysqli_query($this->db_link, $query);
if ($r == false)
    printf("error: %s\n", mysqli_errno($this->db_link));
Salin selepas log masuk

Pengubahsuaian ini akan mencetak mesej ralat yang dikaitkan dengan kegagalan pertanyaan.

Nota Tambahan:

  • mysqli_errno mengembalikan kod ralat yang dikaitkan dengan ralat MySQL terakhir.
  • Berikut adalah beberapa pautan berguna untuk rujukan selanjutnya:

    • [Manual PHP: mysqli_error](https://www.php.net/manual/en/function.mysqli-error.php)
    • [Manual PHP: mysqli_errno](https://www.php.net/manual/ en/function.mysqli-errno.php)

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memaparkan Mesej Ralat MySQL Terperinci daripada Pertanyaan Input Pengguna PHP?. 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