ホームページ  >  記事  >  データベース  >  PHP で「mysql_fetch_assoc(): 指定された引数は有効な MySQL 結果リソースではありません」という警告が表示されるのはなぜですか?

PHP で「mysql_fetch_assoc(): 指定された引数は有効な MySQL 結果リソースではありません」という警告が表示されるのはなぜですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-10-27 11:35:021001ブラウズ

Why Am I Getting the

「php warning mysql_fetch_assoc」: 間違い

この記事では、「mysql_fetch_assoc(): 指定された引数がありません」が発生する問題について詳しく説明します。 PHP を使用して MySQL データベースの情報にアクセスすると、「有効な MySQL 結果リソース」という警告が表示されます。

通常、PHP の mysql_* 関数は、以下に示すように特定の方法で動作します。

<code class="php">$id = 1234;
$query = 'SELECT name, genre FROM sometable WHERE id=' . $id;
// $query is a string with the MySQL query
$resource = mysql_query($query);
// $resource is a *MySQL result resource* - a mere link to the result set
while ($row = mysql_fetch_assoc($resource)) { 
    // $row is an associative array from the result set
    print_r($row);
    // do something with $row
}</code>

この例では、$resource は、クエリの実行から取得された有効な MySQL 結果リソースを表します。このリソースが mysql_fetch_assoc に渡されると、結果セットから連想配列が抽出されます。ただし、有効な結果リソース以外のもの (文字列、オブジェクト、ブール値など) が mysql_fetch_assoc に渡されると、関数はエラーを発生させます。

よくある落とし穴の 1 つは、有効なクエリ文字列以外のものを渡すことです。 mysql_queryに。このような場合、mysql_query は FALSE を返しますが、これは有効な結果リソースではありません。 mysql_fetch_assoc に FALSE を渡そうとすると、警告がトリガーされます。

以上がPHP で「mysql_fetch_assoc(): 指定された引数は有効な MySQL 結果リソースではありません」という警告が表示されるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。