在PHP中显示SQL中的记录总数
我试图用PHP显示数据库中的记录数 这是我目前掌握的密码在PHP中显示SQL中的记录总数,php,sql,Php,Sql,我试图用PHP显示数据库中的记录数 这是我目前掌握的密码 <?php $link = mysqli_connect('localhost', 'root', ''); if (!$link) { die('Could not connect: ' . mysqli_error()); } mysqli_select_db($link,'tasks_db'); $result = mysqli_query($link, "SELECT id FROM newtask"); printf (
<?php
$link = mysqli_connect('localhost', 'root', '');
if (!$link) {
die('Could not connect: ' . mysqli_error());
}
mysqli_select_db($link,'tasks_db');
$result = mysqli_query($link, "SELECT id FROM newtask");
printf ("TOTAL: %d\n", mysqli_fetch_array($result));
mysqli_query($link, "COMMIT");
?>
但它只是显示一条记录,而不是我数据库中的两条记录?不确定哪里出错?您应该在SQL查询中使用,例如:
mysql> SELECT COUNT(*) as number FROM pet;
+----------+
| number |
+----------+
| 9 |
+----------+
在您的情况下,可能是:
SELECT count(*) as number FROM newtask
您可能需要使用:
SELECT count(id) as `total` FROM `newtask`
或
如果要对结果进行分页。使用SQL
count
aggregate函数,并获取列的名称
通过mysqli\u fetch\u数组中的alisa名称获取计数
数字
$result = mysqli_query($link, "SELECT COUNT(id) as cnt FROM newtask");
$row = mysqli_fetch_array($result,MYSQLI_ASSOC);
printf ("TOTAL: %d\n", $row["cnt"]);
mysqli_fetch_数组不足以获取计数,因为它只获取结果集中的第一行。试试这个
printf(“总计:%d\n”,mysqli_num_行($result))代码>您使用此代码也会显示结果行
$result = mysqli_query($link, "SELECT id FROM newtask");
$numrows=mysqli_num_rows($result);
printf ("TOTAL: %d\n", $numrows);
您好,谢谢,但即使我添加了更多条目,它仍然似乎只显示1个条目?您的意思是什么?它将只返回一行,其中一列名为“number”,该列应包含已计数的行数
printf ("TOTAL: %d\n", mysqli_fetch_array($result));
$result = mysqli_query($link, "SELECT id FROM newtask");
$numrows=mysqli_num_rows($result);
printf ("TOTAL: %d\n", $numrows);