【发布时间】:2015-05-16 14:57:32
【问题描述】:
查询运行良好,没有限制日期语句“BETWEEN ** AND **”。当我添加日期限制时,它返回一个布尔值,而不是通过循环对结果进行分组。
这是我的代码
$result = $mysqli->query("SELECT blood_type WHERE date BETWEEN '".
$startingdate."' AND '". $endingdate ."',
count(*) AS donor_count FROM donors GROUP BY blood_type");
这是循环:
while ($row = $result->fetch_assoc()) {
$resultArray[] = $row;
}
抛出此错误:
PHP Fatal error: Call to a member function fetch_assoc() on boolean
知道为什么它没有返回应有的数组吗?
编辑:
我收到以下错误:
您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的“WHERE date BETWEEN '2015-04-20' AND '2015-05-18', count(*) AS donor_count FROM d' 附近使用正确的语法” /p>
【问题讨论】:
-
@Fred-ii- 您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的“WHERE date BETWEEN '2015-04-20' AND '2015-05-18', count(*) AS donor_count FROM d' 附近使用正确的语法” /跨度>
-
您的
FROM的位置/查询顺序错误。请参阅下面的答案。 -
将错误报告添加到您的打开 PHP 标记(例如
<?php error_reporting(E_ALL); ini_set('display_errors', 1);)之后的文件顶部,然后是其余代码,以查看它是否产生其他任何内容。如果您确实使用mysqli_进行连接,您可能需要向我们展示更多代码。 -
@Fred-ii-我每次收到错误时都会读取 apache 的错误日志,它会打印相同的错误...是的,我正在使用完全 mysqli ..