Rumah >pangkalan data >tutorial mysql >Mengapa Kod PHP Saya Throw \'mysqli_fetch_array() menjangkakan parameter 1 ialah mysqli_result, boolean diberi\'?

Mengapa Kod PHP Saya Throw \'mysqli_fetch_array() menjangkakan parameter 1 ialah mysqli_result, boolean diberi\'?

Linda Hamilton
Linda Hamiltonasal
2024-11-23 01:26:33391semak imbas

Why Does My PHP Code Throw

"mysqli_fetch_array() menjangkakan parameter 1 adalah mysqli_result, boolean diberi" Ralat: Menyelesaikan masalah dalam PHP

Parameter "mysqli(_fetch_array) 1 menjadi mysqli_result, boolean diberi" ralat dalam PHP timbul apabila parameter pertama dihantar ke mysqli_fetch_array() bukan set hasil yang sah daripada pertanyaan MySQL yang berjaya.

Masalah:

Dalam yang disediakan coretan kod, pertanyaan "PILIH * DARI pengguna WHERE fb_id = " . $fb_id . " LIMIT 0, 30 " tidak berjaya dilaksanakan. Akibatnya, mysqli_query() mengembalikan false, yang kemudiannya diluluskan sebagai parameter pertama kepada mysqli_fetch_array(). Ini menyebabkan ralat.

Penyelesaian:

Untuk membetulkan ralat, anda perlu memastikan bahawa pertanyaan MySQL adalah sah dan mengembalikan set hasil yang sah. Tambahkan kod berikut selepas mysqli_query() untuk menyemak ralat dan memaparkannya:

if (!$check1_res) {
    trigger_error(mysqli_error($con), E_USER_ERROR);
}

Ini akan mengeluarkan mesej ralat jika pertanyaan gagal, membantu anda mengenal pasti isu tersebut.

Punca Kemungkinan:

  • Sambungan pangkalan data isu: Pastikan sambungan pangkalan data ($con) adalah sah.
  • Ralat sintaks dalam pertanyaan: Semak pertanyaan untuk sebarang kesilapan menaip atau sintaks yang salah.
  • Kebenaran ditolak: Sahkan bahawa pengguna mempunyai kebenaran yang diperlukan untuk melaksanakan pertanyaan.
  • Nama jadual atau medan tidak sah: Pastikan pengguna jadual dan medan fb_id wujud dalam pangkalan data.

Maklumat Tambahan:

  • Untuk maklumat lanjut tentang mysqli_error(): https://www.php.net/manual/en/mysqli.error.php
  • Rujuk dokumentasi MySQL untuk garis panduan menulis pertanyaan yang betul: https://dev.mysql.com/doc/

Atas ialah kandungan terperinci Mengapa Kod PHP Saya Throw 'mysqli_fetch_array() menjangkakan parameter 1 ialah mysqli_result, boolean diberi'?. 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