ホームページ >データベース >mysql チュートリアル >PHP スクリプトで「警告: mysql_fetch_array(): 指定された引数は有効な MySQL 結果ではありません」エラーが発生するのはなぜですか?
エラー: 「警告: mysql_fetch_array(): 指定された引数は有効な MySQL 結果ではありません」
PHP スクリプトを実行しようとすると、次のエラー メッセージが表示されます:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result [duplicate]
このエラーは、 mysql_fetch_array() 関数に無効な MySQL 結果が提供されました。この問題を解決するには、根本的な原因を調べてみましょう。
無効な MySQL 結果
mysql_fetch_array() 関数は、引数として有効な MySQL 結果オブジェクトを必要とします。このオブジェクトは、クエリの実行後に mysql_query() 関数によって返されます。クエリが無効であるか失敗した場合、mysql_query() 関数は有効な結果オブジェクトの代わりに false 値を返します。
エラーのチェック
クエリが問題の原因である場合は、クエリの実行後に mysql_error() 関数を確認する必要があります。この関数は、クエリの実行中に発生したエラーの詳細を提供します。
コード例:
$result = $connector->query('SELECT title,content FROM staff_vacancies ORDER BY ordering LIMIT 0,100'); if (!$result) { die('Invalid query: ' . mysql_error()); }
変更された query() 関数
エラー処理を改善し、より詳細なエラー メッセージを提供するには、DbConnector の query() 関数を変更できます。
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; }
この変更された関数は、エラー番号と失敗したクエリを含む詳細なエラー メッセージを含む例外をスローします。この例外を処理することで、問題の特定と解決に役立つ、より使いやすいエラー メッセージを提供できます。
以上がPHP スクリプトで「警告: mysql_fetch_array(): 指定された引数は有効な MySQL 結果ではありません」エラーが発生するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。