ホームページ  >  記事  >  データベース  >  「mysql_fetch_array() はパラメータ 1 がリソースの問題であると想定しています」エラーが発生するのはなぜですか?また、その解決方法は何ですか?

「mysql_fetch_array() はパラメータ 1 がリソースの問題であると想定しています」エラーが発生するのはなぜですか?また、その解決方法は何ですか?

DDD
DDDオリジナル
2024-11-02 12:53:30430ブラウズ

Why does

「Mysql_fetch_array() はパラメーター 1 がリソースの問題 [重複] であると想定しています」 - エラーの理解と解決

エラー " 「mysql_fetch_array() はパラメータ 1 がリソースであることを期待しています。問題」は、mysql_fetch_array() 関数が最初の引数として有効なリソースを受け取らない場合に発生します。これは通常、先行する mysql_query() 呼び出しがデータベースからのデータの取得に失敗した場合に発生します。

このエラーを解決するには、mysql_query() 呼び出しの後にエラー チェックを実行することが重要です。次の例は、提供されたコードにエラー チェックを追加する方法を示しています:

<br>$result = mysql_query("SELECT * FROM Student WHERE IDNO=" . $_GET['id']) ;<br>if (!$result) { // このエラー チェックを追加します。</p>
<pre class="brush:php;toolbar:false">die('Invalid query: ' . mysql_error());

}

mysql_query() が失敗すると、戻ります。 false、ブール値。 mysql 結果オブジェクトを期待して mysql_fetch_array() に渡すと、前述のエラーが発生します。

エラー チェックを使用して書き換えられたコードは次のとおりです。

<br>$ con = mysql_connect("localhost", "root", "nitoryolai123$%^");<br>if (!$con) {</p>
<pre class="brush:php;toolbar:false">die('Could not connect: ' . mysql_error());

}

mysql_select_db("school ", $con);
$result = mysql_query("SELECT * FROM Student WHERE IDNO=" . $_GET['id']);
if (!$result) {

die('Invalid query: ' . mysql_error());

}

while ($row = mysql_fetch_array($result)) {

?>
<table class="a" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#D3D3D3">
    <tr>
        <form name="formcheck" method="get" action="updateact.php" onsubmit="return formCheck(this);">
            <td>
                <table border="0" cellpadding="3" cellspacing="1" bgcolor="">
                    <tr>
                        <td colspan="16" height="25" style="background:#5C915C; color:white; border:white 1px solid; text-align: left"><strong><font size="2">Update Students</font></strong></td>
                    </tr>
                    <tr>
                        <td width="30" height="35"><font size="2">*I D Number:</font></td>
                        <td width="30"><input name="idnum" onkeypress="return isNumberKey(event)" type="text" maxlength="5" id='numbers' value="<?php echo $_GET['id']; ?>" /></td>
                    </tr>
                    <tr>
                        <td width="30" height="35"><font size="2">*Year:</font></td>
                        <td width="30"><input name="yr" onkeypress="return isNumberKey(event)" type="text" maxlength="5" id='numbers' value="<?php echo $row["YEAR"]; ?>" /></td>
                    </tr>
                </table>
            </td>
        </form>
    </tr>
</table>
<?php

}

エラーチェックを組み込むことでコードを使用すると、データベース取得の潜在的な失敗を効果的に特定して処理できるようになり、「mysql_fetch_array() はパラメーター 1 がリソースの問題であると想定しています」エラーを防ぐことができます。

以上が「mysql_fetch_array() はパラメータ 1 がリソースの問題であると想定しています」エラーが発生するのはなぜですか?また、その解決方法は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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