删除不适用于 PDO SQL 的数组?

Delete an array not working with PDO SQL?

我已经花了 3 个小时才尝试根据 id 删除 mysql 中的一行... 看起来很简单吧?

考虑到数组可能包含多个值: $result = 数组 ( [3] => 4_Couture )

Array ( [3] => 4_Couture )
$sql_delete = "DELETE FROM users_resumes WHERE id_training_key = ? ";
$stmt_delete= $pdo->prepare($sql_delete);
foreach($result as $r) {
            $stmt_delete->execute($r);
    }

这似乎是对的,不是吗? 错误:PDOStatement::execute() 期望参数 1 为数组,给定的字符串

非常欢迎任何线索!非常感谢来自法国!

假设 $result 是一个 one-dimensional 数组,如

$result = [ 3 => '4_Couture' ];

这意味着您正在尝试使用单个字符串值调用 $stmt->execute(),其中 需要 一个数组。

我建议你改用bindParam

$stmt_delete = $pdo->prepare("DELETE FROM users_resumes WHERE id_training_key = ?");
$stmt_delete->bindParam(1, $r);
foreach ($result as $r) {
  $stmt_delete->execute();
}