Problème pdo php

Fermé
beta.a Messages postés 28 Date d'inscription mercredi 13 février 2019 Statut Membre Dernière intervention 14 mars 2019 - 4 mars 2019 à 14:42
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 - 4 mars 2019 à 15:03
salut,aider moi SVP
Warning: PDOStatement::execute() [pdostatement.execute]: SQLSTATE[HY093]: Invalid parameter number: number of bound variables does not match number of tokens in (......)
A voir également:

1 réponse

jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650
4 mars 2019 à 14:53
Bonjour,

Sans voir ton code on ne pourra pas t'aider précisément....
Mais bon.. le message est pourtant assez clair !
Le nombre de variables envoyées dans le execute() ne correspond pas au nombre de variables indiquées dans ta requête

Exemple causant une erreur
$sql = " SELECT * FROM maBdd WHERE  id=:id, name=:name ";

Et dans le execute tu envoies :
$datas = array(':id'=> 1 , ':name'=>50 , ':trucnondemande'=>'fallaitpasetrela');

Dans cet exemple ... la requete attend deux variables
Dans le execute on en a passé 3
Donc... pas le bon nombre


1
beta.a Messages postés 28 Date d'inscription mercredi 13 février 2019 Statut Membre Dernière intervention 14 mars 2019
4 mars 2019 à 14:58
oui c résolu merci beaucoup mais il reste une autre problème:
Erreur SQL !
INSERT INTO etudiant (id_etudiant,id_dr,id_entite, status) VALUES ('0','','256','-1')
Duplicate entry '0-0' for key 'PRIMARY
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650 > beta.a Messages postés 28 Date d'inscription mercredi 13 février 2019 Statut Membre Dernière intervention 14 mars 2019
4 mars 2019 à 15:03
Là encore le message est on ne peut plus clair .......
Tu as déjà un étudiant avec l'id 0
Vu que c'est ta clé primaire.. tu ne peux pas avoir de multiples enregistrements avec la même valeur.....
J'espère également que tu as mis cette clé en AUTO-INCREMENT
Et dans ce cas.. il ne faut pas l'utiliser dans l'insert
INSERT INTO etudiant (id_dr,id_entite, status) VALUES ('','256','-1')
0