mysqli_num_rowsを使ってテーブルの行数を表示しようとしています。結果を印刷すると、実際に複数の行があるときには1行しかないという。PHP - mysqli_num_rows - 私は多くの行を持っていると1行しかないと言っています
phpMyAdminでSQLをテストすると、正しい行数がカウントされます。しかし、Webページに結果を表示すると、1行だけがカウントされます。
私を助けてください。私が間違っていることは何ですか?
$mysqli = new mysqli("localhost", "myusername", "mypass", "mydatabase");
/* check connection */
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
if ($result = $mysqli->query("SELECT COUNT(*) FROM mytable")) {
/* determine number of rows result set */
$row_cnt = $result->num_rows;
printf("Result set has %d rows.\n", $row_cnt);
/* close result set */
$result->close();
}
/* close connection */
$mysqli->close();
上記のコードは関係なく、私が持っているどのように多くの行は、次の手順を印刷しない:
結果セットは1行があります。
カウント機能を削除してください。それはどちらか一方です。 –
Fredのコメントを詳しく述べると、 'COUNT'は行の 'groups'で働く多くの集約関数の一つです。あなたのクエリでは、 'COUNT'は自動的にグループのすべての行を単一の行に '折りたたみ'ます。この場合、あなたのグループにはすべての行が含まれています。 – noahnu
ありがとうございます。それは働いた。 – Brandon