Erreur requête

Résolu
Bonjour,

J'ai la requête suivante :
$req = $bdd->prepare("INSERT INTO commentaires (pseudo,contenu,article_id) VALUES (:pseudo,:comment,:article_id)") or die(print_r($bdd->errorInfo()));
$req->execute(array(
'pseudo'=>$pseudo,
'comment'=>$comment,
'article_id'=>$p
));
print_r($req->errorInfo());
$req->closeCursor();

qui me renvoi ceci :
Array ( [0] => HY000 [1] => 1452 [2] => Cannot add or update a child row: a foreign key constraint fails ('blog'.'commentaires', CONSTRAINT 'commentaires_ibfk_1' FOREIGN KEY ('id') REFERENCES 'articles' ('id') ON DELETE CASCADE ON UPDATE CASCADE) )

je ne comprends pas, quelqu'un pourrait-il m'expliquer.
Merci.

2 réponses

  • Votes
  • Date
  • Date décroissante
  1. As tu essayé d'afficher le contenu de la variable $p ? Que contient-elle ?artcile_id est champ clé primaire ou une clé étrangère ? Si clé primaire, vérifie qu'elle n'existe pas déjà. Si clé étrangère, vérifie que la référence existe.
    1. Merci pour ta réponse feez, en fait j'ai refait ma table sans mettre l'id en clé primaire et en mettant le champ article_id en index ce qui m'a permis ensuite de faire la bonne relation entre les deux tables et maintenant tout marche comme sur des roulettes.
      Merci quand même.