"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!