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 サイトの他の関連記事を参照してください。