Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Membetulkan Ralat 'mysql_fetch_array(): argumen yang dibekalkan bukan hasil MySQL yang sah'?

Bagaimana untuk Membetulkan Ralat 'mysql_fetch_array(): argumen yang dibekalkan bukan hasil MySQL yang sah'?

Susan Sarandon
Susan Sarandonasal
2024-12-15 11:51:18831semak imbas

How to Fix the

Ralat: "Amaran: mysql_fetch_array(): argumen yang dibekalkan bukan hasil MySQL yang sah"

Dalam kod yang disediakan, ralat ialah ditemui semasa cuba memanggil $connector->fetchArray($result) disebabkan hasil MySQL yang tidak sah. Untuk menyelesaikan isu ini, langkah berikut boleh diambil:

  1. Sahkan Kesahihan Pertanyaan: Pastikan pertanyaan yang dilaksanakan menggunakan $connector->query() menghasilkan hasil yang sah. Periksa nilai pulangan bagi fungsi pertanyaan dan, jika perlu, dapatkan semula log ralat menggunakan mysql_error().
  2. Semak Sambungan Pangkalan Data: Sahkan bahawa sambungan ke pangkalan data diwujudkan dengan betul dalam Kelas DbConnector. Sahkan bahawa tetapan pangkalan data yang betul disediakan dan sambungan berjaya dibuat.
  3. Semak Fungsi FetchArray: Seperti yang dicadangkan dalam respons ralat, pertimbangkan untuk mengubah suai fungsi fetchArray dalam kelas DbConnector untuk memperbaiki ralat pengendalian. Melemparkan pengecualian apabila menghadapi pertanyaan buruk memberikan mesej ralat yang lebih deskriptif dan memudahkan penyahpepijatan.

Berikut ialah versi terkini fungsi fetchArray:

function fetchArray($result) {
    if (!$result || mysql_errno()) {
        throw new Exception("Invalid MySQL result: ".$this->getQuery().".\nError: ".mysql_error());
    }
    return mysql_fetch_array($result);
}

Dengan melaksanakan langkah-langkah ini, ralat yang berkaitan dengan keputusan MySQL yang tidak sah harus diselesaikan, membenarkan kod itu berjaya mendapatkan semula dan memaparkan pertanyaan hasil.

Atas ialah kandungan terperinci Bagaimana untuk Membetulkan Ralat 'mysql_fetch_array(): argumen yang dibekalkan bukan hasil MySQL yang sah'?. 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