Rumah >pangkalan data >tutorial mysql >Mengapakah `mysql_fetch_array()` Mengembalikan Boolean Daripada Sumber, dan Bagaimana Saya Boleh Membetulkannya?

Mengapakah `mysql_fetch_array()` Mengembalikan Boolean Daripada Sumber, dan Bagaimana Saya Boleh Membetulkannya?

Susan Sarandon
Susan Sarandonasal
2024-12-22 03:05:16968semak imbas

Why Does `mysql_fetch_array()` Return a Boolean Instead of a Resource, and How Can I Fix It?

Ralat Sumber MySQL: mysql_fetch_array()/mysql_fetch_assoc()/mysql_fetch_row()/mysql_num_rows dll..."

>

>

dengan pangkalan data MySQL, pembangun mungkin menghadapi ralat mesej seperti "mysql_fetch_array() menjangkakan parameter 1 sebagai sumber, boolean diberikan Isu ini timbul apabila pertanyaan gagal dan fungsi yang menerima hasil pertanyaan sebagai argumen mentafsirkannya sebagai boolean dan bukannya sumber.

Untuk menyelesaikan ralat ini, langkah pertama adalah untuk mengesahkan bahawa pertanyaan berjaya dilaksanakan Sebelum menghantar hasil ke fungsi seperti mysql_fetch_array(), nilaikan pembolehubah hasil menggunakan mysql_query(). Jika ia mengembalikan palsu, pertanyaan telah gagal dan pemprosesan selanjutnya tidak sepatutnya berlaku.

Mengendalikan Keadaan Ralat dalam Sambungan MySQL

Pelanjutan mysql_ yang ditamatkan menyediakan cara untuk mendapatkan semula mesej ralat yang dikaitkan dengan pertanyaan yang gagal menggunakan mysql_error(). Dengan memasukkan semakan ini ke dalam kod, pembangun boleh mencetuskan ralat dan memberikan maklumat yang bermakna untuk menangani isu tersebut.

Contoh dengan sambungan mysql_:

$username = mysql_real_escape_string($_POST['username']);
$password = $_POST['password'];
$result = mysql_query("SELECT * FROM Users WHERE UserName LIKE '$username'");

if ($result === FALSE) {
    trigger_error(mysql_error(), E_USER_ERROR);
}

while ($row = mysql_fetch_array($result)) {
    echo $row['FirstName'];
}

Dengan mengikut langkah ini, pembangun boleh mendiagnosis dan menyelesaikan isu di mana mysql_fetch_array() mengharapkan sumber tetapi menerima boolean, memastikan perolehan data lancar daripada jadual MySQL.

Atas ialah kandungan terperinci Mengapakah `mysql_fetch_array()` Mengembalikan Boolean Daripada Sumber, dan Bagaimana Saya Boleh Membetulkannya?. 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