我有一个由cookie填充的数组。长度每次都不同。包含的值是我想从数据库中选择的ID。我知道我可以使用类似下面的内容来检索具有特定ID的多行:
$query = "SELECT game_id,thumb,title,rating,instructions FROM games WHERE game_id IN ('111','110')";
我的问题是,如何从数据库中检索数组$favGames
的ID?我在另一个问题中发现了以下内容:WHERE id IN (' . implode(',', $ids) . ')';
但它似乎对我不起作用。我还有其他选择吗?
答案 0 :(得分:1)
你需要这样的东西:
$query = "SELECT game_id,thumb,title,rating,instructions FROM games WHERE game_id IN ('" . implode("','", $favGames) ."')";
如果您在内爆调用中没有额外的单引号,则查询将如下所示:
选择 game_id,拇指,标题,等级,说明 来自游戏WHERE game_id IN ( '111110')
注意缺少的引号?这就是造成你错误的原因。
答案 1 :(得分:0)
你的第二个表达中不应该$ ids是$ favGames吗?并且所有ID都是数字的吗?如果不是,则需要在元素周围添加'',就像在初始查询中一样