ホームページ > データベース > mysql チュートリアル > なぜ `mysql_fetch_array()` は「ブール値が与えられた場合、パラメータ 1 がリソースであることを期待します」を返すのでしょうか?

なぜ `mysql_fetch_array()` は「ブール値が与えられた場合、パラメータ 1 がリソースであることを期待します」を返すのでしょうか?

Patricia Arquette
リリース: 2025-01-01 07:30:10
オリジナル
634 人が閲覧しました

Why Does `mysql_fetch_array()` Return

MySQL リソース エラーについて

mysql_fetch_array() などの MySQL 手続き関数を使用して MySQL テーブルからデータを取得しようとすると、エラーが発生します:「mysql_fetch_array() はパラメーター 1 がリソースであることを期待しています。ブール値が与えられました。」このエラーは通常、さまざまな理由でクエリが失敗したときに発生します。

この問題を解決するには、mysql_fetch_array() 関数に渡す前に $result 変数の値を確認することが重要です。クエリが失敗した場合、$result は false に設定されます。

たとえば、指定した PHP コードでは次のようになります。

$result = mysql_query('SELECT * FROM Users WHERE UserName LIKE $username');
ログイン後にコピー

SQL クエリに構文エラーがあります。 LIKE 演算子の正しい構文は、検索文字列を一重引用符で囲むことです。

$result = mysql_query("SELECT * FROM Users WHERE UserName LIKE '$username'");
ログイン後にコピー

構文エラーを修正したら、次のように $result が false でないかどうかを確認する必要があります。

if($result !== FALSE) {
    while($row = mysql_fetch_array($result)) {
        echo $row['FirstName'];
    }
} else {
    trigger_error(mysql_error(), E_USER_ERROR);
}
ログイン後にコピー

mysql_error() 関数は、クエリの失敗に関する詳細を提供します。これは、ユーザーに表示したり、デバッグ用にログに記録したりできます。目的。クエリ エラーを適切に処理することで、PHP リソース エラーを回避し、MySQL テーブルからデータを正常に取得できます。

以上がなぜ `mysql_fetch_array()` は「ブール値が与えられた場合、パラメータ 1 がリソースであることを期待します」を返すのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート