通过PDO Params将数组传递给SQL查询以搜索IN数组

时间:2018-05-08 18:01:28

标签: mysql sql arrays pdo parameters

我不知道如何标题这个问题,但是我开始意识到SQL注入的风险,我正在修改查询以使用预准备语句。

在原始查询中,我传递了一组id,以便在DB中查找:

AND item.id IN ($ids)

例如

$ids = "35,36,69,73,98,218,219,234,242";

现在我修改了查询,因此我将这些数据放入$params,如下所示:

$params = [':ids' => $ids ];

并将查询中的行修改为:

AND item.id IN (:ids)

所以我执行这样的查询:

$query->execute($params);

然而,通过转储$query我可以看到id没有传递,而这就是传递的:

IN (:ids)

显然没有找到任何东西。

0 个答案:

没有答案