私が言ったように、mysql_fetch_rowによって返された結果を数えることはできません:
while ($a = mysql_fetch_row($sql)) {
$result = count($a);
echo $result;
}
リターン(1)はなぜですか?
いつでも使えます
$result = mysql_num_rows($sql);
単一の行を数えると(最も適切には単一のフィールドを含む)、1-が返されます。結果mysql_num_rows()
を取得する前に行数が必要かどうかを確認します。または、独自のアプローチをフォローアップする場合は、次のようにします。
$count=0;
while ($a = mysql_fetch_row($sql)) {
//Do something with the result
$count++;
}
echo $count;
試すmysql_num_rows($sql);
1行だけをフェッチしてカウントしようとするため、mysql_num_rowsを試してください。
の戻り値はmysql_fetch_row
、現在の行の列値の配列です。したがって、$result
は列の数であり、行の数ではありません。行数を取得するには、この関数を使用できますmysql_num_rows
。
ところで:その古いmysqlライブラリを使用せず、mysqliまたはPDOを使用してください。