我不知道这个问题的确切标题,但是我意识到了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)
所以很明显什么也找不到。
暂无答案!
目前还没有任何答案,快来回答吧!