所以我有一个名为Users
的表,其中包含如下表结构:
假设我有一个名为“signups”的 mysql 表,其中包含以下值:
UID|Name|Regdate
1|Admin|2014-03-04 10:51:01
2|Demo|2014-05-04 09:51:05
我想创建一个图表,显示一天内有多少人注册。我使用了这个 SQL 查询:
SELECT DATE(regdate) AS `Date` , COUNT(*) AS Signups FROM `users` GROUP BY DATE(regdate)
它给了我一个输出:
Date|Signups
2014-03-04|1
2014-05-04|1
我想要 PHP 文件中的输出,所以我做了这个
<?php include_once("inc/db.php"); ?>
<?php
$query ="
SELECT DATE(regdate) AS `Date`
, COUNT(*) AS Signups
FROM `users`
GROUP BY
DATE(regdate)
";
$query_params = array(
);
try
{
$stmt = $db->prepare($query);
$result = $stmt->execute($query_params);
}
catch(PDOException $ex)
{
die("Failed to run query: " . $ex->getMessage());
}
echo $result;
?>
当我尝试访问该页面时,我得到的结果应该与我从 SQL 查询得到的结果相同。然而我得到的结果是1
。如您所见,我正在使用 PDO。我是初学者请帮助我。 :)
最佳答案
你使用mysqli
还是PDO
?无论如何,execute
不会返回最终结果,假设您使用 PDO
,您必须:
try
{
$stmt = $db->prepare($query);
$result = $stmt->execute($query_params);
foreach($stmt->fetchAll() as $fetch)
{
// do something
}
}
catch(PDOException $ex)
{
die("Failed to run query: " . $ex->getMessage());
}
echo $result;
关于PHP - 计算每天的 SQL 结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30013430/