Excluir uma matriz que não funciona com PDO SQL?
Aug 26 2020
já faz 3 horas que estou tentando deletar uma linha no mysql com base em uma id ... Parece simples, certo?
Levando em consideração que a matriz pode conter vários valores: $ result = Array ([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);
}
Isso parece estar certo, não? erro: PDOStatement :: execute () espera que o parâmetro 1 seja array, string fornecida
Qualquer, qualquer, qualquer pista é muito bem-vinda! muito obrigado da França!
Respostas
4 Phil Aug 26 2020 at 08:42
Supondo que $resultseja uma matriz unidimensional como
$result = [ 3 => '4_Couture' ];
Isso significa que você está tentando chamar $stmt->execute()com um único valor de string em que é necessário um array.
Eu sugiro que você use ao bindParaminvés
$stmt_delete = $pdo->prepare("DELETE FROM users_resumes WHERE id_training_key = ?"); $stmt_delete->bindParam(1, $r); foreach ($result as $r) { $stmt_delete->execute();
}
O que significa um erro “Não é possível encontrar o símbolo” ou “Não é possível resolver o símbolo”?