【发布时间】:2017-12-29 18:26:47
【问题描述】:
大家好,我有这个问题:
$URLA=implode("','",$Array);
$Data=$connection->prepare("SELECT Category,ID FROM SITES WHERE URL IN('".$Array."') AND Email=:Email ORDER BY Category DESC");
$Data->bindValue(':URL', $URL);
$Data->bindValue(':Email', $Email);
$Data->execute();
这段代码给出了这个错误: 未捕获的 PDOException:SQLSTATE[HY093]:无效的参数号:绑定变量的数量与标记的数量不匹配。 我怎么解决这个问题? 请注意,Array 是一个来自 while 循环的变量。并且包含多个变量。 我试着像这样绑定这个数组:
$Data->bindValue(':Array', $Array);
但这没有用:'(
【问题讨论】:
-
URL IN('".$Array."')应该是$URLA -
您也没有在查询中使用
:URL。我希望您不打算将其用于WHERE URL。 -
@Funk Forty Niner nono,因为 implode 会像:1','2' 这样的数组,所以 ' ' 将是 '1','2'
-
$Array里面是什么??? -
@Abdulla Nilam 1 和 2