Bon, j'ai réussi à créer ma clé étrangère, mais je rencontre un autre problème maintenant.
Pour éviter de spammer le forum de mes sujets, je vais faire part du souci ici.
Maintenant que j'ai ma clé étrangère, j'aimerai bien pouvoir insérer dans ma bdd le message du membre, en lui attribuant l'id correspondant à l'auteur.
Par exemple, lorsque Dan poste un message, puisque son id dasns la BDD est le 6, j'aimerai que la colonne id_Auteur de la table minichat associe l'id 6 à son message. Et ce pour tous les messages de Dan, à chaque fois.
Du coup, au départ je voulais insérer dans une variable le pseudo que je récupère en POST, pour l'insérer dans une première requête qui irai chercher l'id de l'auteur en question :
Puis lors de la requête d'insertion dans la BDD, utiliser cette variable créer plus tôt pour lui dire de donner la valeur X à id_Auteur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 $pseudo=htmlspecialchars($_POST['pseudo']); $idAuteur = $bdd->prepare('SELECT id FROM membre WHERE pseudo="$pseudo"');
Sauf que voilà, je rencontre un problème :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 $req = $bdd->prepare('INSERT INTO minichat (pseudo, message, id_auteur) VALUES (:pseudo, :message, :id_auteur)'); $req->execute(array( 'pseudo' => $pseudo, 'message' => htmlspecialchars($_POST['message']), 'id_auteur'=>$idAuteur));
Object of class PDOStatement could not be converted to string
Ne connaissant pas encore trop bien PDO, j'aurai besoin d'un coup de main pour corriger mon code.
Je vous remercie.
Partager