2010-12-17 10 views
0

最近私のプロジェクトの1つで、データベースからデータを取得して印刷するためのコードを書きました。 tblteachersテーブルのPHPでmysql_fetch_array()をループするとき

$query = "select * from tblteachers limit 0, 4"; 
$result= mysql_query($query) or die(mysql_error()); 

if(mysql_num_rows($result)>0) 
{ 
    while($fetchRow=mysql_fetch_array($result, MYSQL_BOTH)) 
    { 
     echo $fetchRow['id']; 
    } 
} 

が14行であり、クエリが4行を取得するが、問題は、それが最初の行を欠落することにより3行の印刷です。それは2、3、4を印刷します。

+0

@Arif - 任意の最初の行 'id'はnull /空ですか? – ajreal

+0

idはデータベースの自動増分です。それは存在しなければならない。 –

+1

mysqlモニタからクエリを実行するときに、クエリの出力に貼り付けることはできますか? auto_incrementフィールドは、MySQLで動作するためにnull以外の/主キーでなければなりませんが、後で 'alter table'を介してauto_incrementを適用した場合、データがすでに挿入された後、null' id '。 –

答えて

1

ポインタを移動したものを使用した可能性があります。 mysql_data_seek($ result、0)を追加してみてください。 while文の前に

関連する問題