PHP SQL(pdo) -> Erreur de requète execute()

Résolu/Fermé
Shedow12 Messages postés 17 Date d'inscription mardi 12 février 2013 Statut Membre Dernière intervention 13 juin 2014 - 18 févr. 2013 à 22:36
Shedow12 Messages postés 17 Date d'inscription mardi 12 février 2013 Statut Membre Dernière intervention 13 juin 2014 - 3 mars 2013 à 12:24
Bonjour, je suis totalement perdu, je ne comprend pas le problème... L'erreur est :
Warning: PDOStatement::execute(): SQLSTATE[HY093]: Invalid parameter number: parameter was not defined in /***/dev.php on line 48

Et voici le code : (la ligne 48 est la fermeture de l'execute de la requète, soit )); )

$pseudo = $_SESSION['pseudo']; //
if($_POST['aspect'] != NULL AND $_POST['vitesse'] != NULL AND $_POST['facilité'] != NULL AND $_POST['améliorer'] != NULL AND $_POST['fonctions'] != NULL AND $_POST['newfonction'] != NULL AND $_POST['suggestion'] != NULL)
{
$aspect = $_POST['aspect'];
$vitesse = $_POST['vitesse'];
$facilité = $_POST['facilité'];
$améliorer = $_POST['améliorer'];
$fonctions = $_POST['fonctions'];
$newfonction = $_POST['newfonction'];
$suggestion = $_POST['suggestion'];
$req = $bdd->query('SELECT id FROM compte WHERE pseudo = "'.$pseudo.'"');
$donnees = $req->fetch();
$id = $donnees['id'];
$req = $bdd->prepare('INSERT INTO sondagesite(id, pseudo, aspect, vitesse, facilité, améliorer, fonctions, newfonction, suggestion) VALUES(:id, :pseudo, :aspect, :vitesse, :facilité, :améliorer, :fonctions, :newfonction, :suggestion)');
$req->execute(array(
'id' => $id,
'pseudo' => $pseudo,
'aspect' => $aspect,
'vitesse' => $vitesse,
'facilité' => $facilité,
'améliorer' => $améliorer,
'fonctions' => $fonctions,
'newfonction' => $newfonction,
'suggestion' => $suggestion
));

Merci de bien vouloir m'aider.. Je suis rééllement perdu.

2 réponses

Utilisateur anonyme
21 févr. 2013 à 11:28
Dans ton tableau de variable :
$req->execute(array(
'id' => $id,
'pseudo' => $pseudo,
...

La syntaxe ne serait-elle pas avec ":" devant le nom :
$req->execute(array(
':id' => $id,
':pseudo' => $pseudo,
...
0
Shedow12 Messages postés 17 Date d'inscription mardi 12 février 2013 Statut Membre Dernière intervention 13 juin 2014
3 mars 2013 à 12:24
Nope, mais, problème réglé (un peu tard), à cause des accents tout simplement.
0