Problème d'enregistrement de donnée MySQL

Fermé
Rhydan - 30 oct. 2013 à 14:06
 Rhydan - 31 oct. 2013 à 11:10
Bonjour, sur mon site, j'ai ajouté un système de commentaire, mais impossible de les enregistrer dans la base de donnée, j'ai mis ce code là dans mon fichier traitement.php :

$Pseudo = $_POST['Pseudo'];
if(empty($Pseudo))
{
print("<b><u>Vous devez entrer votre prénom !</u></b>");
exit();
}

$NdF = $_POST['NdF'];
if(empty($NdF))
{
print("<b><u>Vous devez entrer votre nom de famille !</u></b>");
exit();
}

$Mail = $_POST['Mail'];
if(empty($Mail))
{
print("<b><u>Vous devez entrer votre adresse mail !</u></b>");
exit();
}

$Message = $_POST['Message'];
if(empty($Message))
{
print("<b><u>Vous devez entrer un commentaire !</u></b>");
exit();
}

(Voilà, les variables sont définies)

Et j'ai ensuite mis ça :

<?php
$req = $bdd->prepare('INSERT INTO Commentaires_Attente(id, Nom, Prenom, Adresse mail, commentaire ) VALUES(:Nom, :Prenom, :Adresse mail, :commentaire)');
$req->execute(array(
'Nom' => $NdF,
'Prenom' => $Pseudo,
'Adresse mail' => $Mail,
'commentaire' => $Message,
));

?>

Et il me retourne cette erreur :

Warning: PDOStatement::execute(): SQLSTATE[HY093]: Invalid parameter number: parameter was not defined in /home/u988960357/public_html/TraitementCommentaires.php on line 83

La ligne 83 correspond à --> ));

Que faire ?

Merci d'avance,

Cordialement



A voir également:

2 réponses

Reivax962 Messages postés 3672 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011
30 oct. 2013 à 14:20
Bonjour,

À mon avis, le problème vient de :Adresse mail
Je pense que l'espace ne lui plait pas trop...

Xavier
0
Bonjour, merci de m'avoir réondu, en effet, le site ne m'affiche plus l'erreur, mais rien n'est écrit dans ma base de donnée.
Comment faire ?
0
Mmh, en fait j'ai réussi, c'est juste le 'id' qui posait problème, merci de votre aide :)
0
Utilisateur anonyme
30 oct. 2013 à 14:21
Bonjour

N'utilise pas d'espace dans un nom de champ (Adresse mail) ni dans le paramètre de la requête préparée :Adresse mail
0
Bonjour, merci de m'avoir répondu, en effet, le site ne m'affiche plus l'erreur, mais rien n'est écrit dans ma base de donnée.
Comment faire ?
0
C'est bon, j'ai trouvé le point bloquant, c'était le 'id', merci de votre aide :)
0