Rumah >pangkalan data >tutorial mysql >Mengapa Saya Mendapat Ralat 'mysql_fetch_array(): argumen yang dibekalkan bukan hasil MySQL yang sah'?

Mengapa Saya Mendapat Ralat 'mysql_fetch_array(): argumen yang dibekalkan bukan hasil MySQL yang sah'?

Barbara Streisand
Barbara Streisandasal
2024-12-15 05:47:13138semak imbas

Why Am I Getting a

"Amaran: mysql_fetch_array(): argumen yang dibekalkan bukan hasil MySQL yang sah [pendua]"

Ralat ini timbul apabila cuba mendapatkan semula data daripada pertanyaan MySQL menggunakan fungsi mysql_fetch_array() sambil memberikan hasil yang tidak sah sumber.

Dalam kes khusus anda, isu itu mungkin berpunca daripada pertanyaan yang salah. Selepas melaksanakan pertanyaan anda dengan kaedah $connector->query() , semak sebarang ralat menggunakan mysql_error().

Jika pertanyaan anda sah, satu lagi kemungkinan untuk dipertimbangkan ialah masalah dengan kelas DbConnector anda, terutamanya fungsi fetchArray(). Pastikan ia ditakrifkan dengan betul seperti berikut:

function fetchArray($result) {
    return mysql_fetch_array($result);
}

Untuk meningkatkan pengendalian ralat, pertimbangkan untuk mengubah suai kaedah query() dalam kelas DbConnector anda untuk membuang pengecualian apabila pertanyaan tidak sah ditemui:

function query($query) {
    $this->theQuery = $query;
    $queryId = mysql_query($query, $this->link);
    if (!$queryId) {
        throw new Exception(mysql_error() . ".  Query was:\n\n" . $query . "\n\nError number: " . mysql_errno());
    }
    return $queryId;
}

Atas ialah kandungan terperinci Mengapa Saya Mendapat 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