Insertion multiple ne fonctionne pas
Bonjour,
J'ai le code suivant:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
|
<?php
function inserer($parametres, $inserer)
{
global $bdd;
$titresCol = str_replace(':', '', $parametres);
$nbCol = count($inserer[1]);
$requete = "INSERT IGNORE INTO adresses ($titresCol)
VALUES ($parametres);";
echo $requete;
$reponse = $bdd->prepare($requete);
foreach ($inserer as $key=>$ligne)
{
var_dump($ligne);
$reponse->execute($ligne);
}
//return $reponse->rowCount();
}
?> |
Ce code me renvoie une erreur:
"Uncaught exception 'PDOException' with message 'SQLSTATE[HY093]: Invalid parameter number: parameter was not defined' "
Pourtant le var_dump($ligne) me renvoie ce résultat:
array (size=5)
0 => string '1' (length=1)
1 => string 'xxxxxxxx' (length=8)
2 => string 'F' (length=1)
3 => string '03460' (length=5)
4 => string 'Trévol' (length=7)
La ligne echo $requete renvoie le texte suivant:
INSERT IGNORE INTO adresses (id_abo, client, pays, cp, ville) VALUES (:id_abo, :client, :pays, :cp, :ville);
J'ai bien 5 paramètres et 5 valeurs. Je n'ai pas pris en compte la clef primaire constituée par le champ id en auto-incrément et qui ne devrait donc pas poser de problème.