-2

このコードを見てください:

    $sql = "SELECT * FROM shop";
    $result = mysql_query($sql);

    echo $result;
    echo "before lop";

    while ($xxx = mysql_fetch_assoc($result)) {

    echo "inside lop";
    echo $xxx['column_name'];

 }
    echo "after lop";

そのようなコードを実行すると、次のメッセージが表示されます。

Resource id #244 
before lop
after lop

while lop には入りませんでした。理由は本当にわかりません :( 以前はこのようなコードを使用していましたが、問題はありませんでした。誰か助けてもらえますか?

4

2 に答える 2

4
 $sql = "SELECT * FROM shop";
 $result = mysql_query($sql) or die(mysql_error());

 echo mysql_num_rows($result);

テーブルに存在するレコードの数を確認しshopます。shop テーブルは空だと思います。だから while ループに入らないのです。

あなたはこのようにすることができます

$count = mysql_num_rows($result);

if($count > 0) {
   while ($xxx = mysql_fetch_assoc($result)) {
      echo $xxx['column_name'];
   }
}
于 2013-08-21T11:54:19.537 に答える