-2

重複の可能性:
警告:mysql_fetch_ *はパラメーター1がリソースであると想定しており、ブール値でエラーが発生します

エラーが発生しました'mysql_fetch_array()は、パラメーター1がリソースであると想定しています。ブール値は3行目のC:\ wamp \ www \ inc\prod_list.phpで指定されています'

これが私のコードです:

<?php
$mysql = mysql_query("SELECT * FROM products ORDER BY id DESC;");
while($row = mysql_fetch_array($mysql)){ //line 3 here
    $id=$row["id"];
    $name=$row["name"];
    $dicription=$row["dicriprion"];
    $price=$row["price"];
    $img_alt=$row["img_alt"];
    $thumb_alt=$row["img_alt"];
    echo 'Data:<br/>
    '. $name.'<br/>
    '. $dicription.'<br/>
    '. $price=$row. '<br/>
    '. $img_alt=$row. '<br/>
    '. $thumb_alt=$row. '<br/>';
}
?>

$ row = mysql_fetch_array($ data)があったことを除いて、これは古いサイトのコードに基づいています。

4

3 に答える 3

0

この問題の最も可能性の高い原因は、mysql_queryfalseを返すことです。指定されたクエリが機能することを確認し(接続が有効かどうか、正しいデータベースが選択されているかどうかなど)、の出力をチェックして、mysql_eror発生したエラーを確認します。

于 2012-05-09T14:28:07.887 に答える
0

ドキュメントから:

mysql_queryFALSE成功時またはエラー時にリソースを返します。

あなたが見ているという事実は、上記への呼び出しが戻ったことをmysql_fetch_array() expects parameter 1 to be resource, boolean given示唆していますmysql_queryFALSE

また、同じドキュメントから:

クエリ文字列はセミコロンで終わらせないでください

...クエリの最後からセミコロンを削除してみてください。そうでない場合は、mysql_errorへの呼び出しを追加して、発生したエラーを確認してください。

于 2012-05-09T14:26:31.197 に答える
0

die別の方法を追加できます。

$mysql = mysql_query("SELECT * FROM products ORDER BY id DESC;") 
    or die("error: " . mysql_error());

また、クエリで選択したすべてのフィールドを指定することをお勧めします。これにより、予期しないフィールド名の「ケーシング」によってエラーが発生することはありません。

$mysql = mysql_query("SELECT id,name,dicriprion,price,img_alt FROM products ORDER BY id DESC;") 
    or die("error: " . mysql_error());
于 2012-05-09T14:33:54.883 に答える