我在我的代码中使用了bind_param
的mysqli,但我一直收到错误:
变量的数量与预准备语句中的参数数量不匹配
但参数匹配变量。任何想法?
这是我的代码:
$fromDate = "2014-06-26";
$toDate = "2014-06-26";
$query = "SELECT DATE_FORMAT(dateUpdated, '%d/%m/%Y'), source_id, count(*) FROM kb_news WHERE dateUpdated BETWEEN 'fromDate 00:00:00' AND 'toDate 23:59:59' GROUP BY DATE(dateUpdated), source_id;";
if($stmt = $this->conn->prepare($query)) {
$stmt->bind_param("ss", $fromDate, $toDate);
由于
答案 0 :(得分:1)
您的查询必须如下。
$query = "SELECT DATE_FORMAT(dateUpdated, '%d/%m/%Y'), source_id, count(*) FROM kb_news WHERE dateUpdated BETWEEN '? 00:00:00' AND '? 23:59:59' GROUP BY DATE(dateUpdated), source_id;";
您必须使用问号作为占位符而不是名称。