我是 PDO 的新手,我已经对我面临的问题进行了一些搜索,但我找不到任何有关它的答案。正如你在下面看到的,我有这个功能:
function deleteInfo($id){
$pdo = connPDO();
$deleteInfo = $pdo -> prepare("DELETE FROM game_locais_zumbis WHERE id_zumbi IN (:id)");
$deleteInfo -> bindValue(":id", $id, PDO::PARAM_STR);
$deleteInfo -> execute();
$pdo = null;
}
Run Code Online (Sandbox Code Playgroud)
之后,我有以下代码:
while($row = $listInfo -> fetch(PDO::FETCH_ASSOC)){
$ids[] = $row['ids'];
}
$ids = implode(',', $ids);
deleteInfo($ids);
Run Code Online (Sandbox Code Playgroud)
当我回显我的 $ids 时,我得到:
1、2、3、4、5
但是 DELETE 函数不会删除我的数据库中的所有这五行,而只是删除第一行,例如“1”。当我在我的数据库中运行完全相同的 DELETE 函数时,将“:id”替换为“1,2,3,4,5”,它确实有效!有人知道我在这里有什么错误吗?我很感激任何帮助。