エラー " 「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> <div class="code" style="position:relative; padding:0px; margin:0px;"><div class="code" style="position:relative; padding:0px; margin:0px;"><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> <div class="code" style="position:relative; padding:0px; margin:0px;"><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 サイトの他の関連記事を参照してください。