【发布时间】:2022-01-19 23:03:15
【问题描述】:
$sql3 = 'SELECT sched_id, date_format(sched_date_time,\'%H:%i\') AS \'Time\'
FROM schedule
WHERE (date_format(sched_date_time,\'%Y-%m-%d\') = \':date\') AND
schedule.film_id = :film_id';
$sth2 = $pdo->prepare($sql3);
$sth2->bindValue(':date', '2021-12-18');
// date_format($date,"%Y-%m-%d")
$sth2->bindValue(':film_id', $row1['film_id']);
$sth2->execute();
我收到以下错误
"参数号无效:绑定变量个数不匹配 令牌数”
我相信这是由 SQL 函数 date_format() 中的变量 $sql3 中的冒号引起的。
如何对冒号进行转义,以便在不让 PDO 认为它是占位符声明的情况下保留它以进行格式化?
根据其他问题的答案,我必须在冒号前使用\\ 来转义它,但我仍然收到错误。
我使用 XAMPP 作为便携式/临时开发环境。 XAMPP 使用 MariaDB 作为其数据库。
【问题讨论】: