Probleme d'insertion [Résolu]

Messages postés
7
Date d'inscription
mercredi 14 novembre 2018
Dernière intervention
15 novembre 2018
-
salut j'ai un souci d'insertion
voilà le code
$insertmbr=$bdd->prepare
("INSERT INTO criminel3
(prenom, nom, surnom, date_naissance,
  lieu_naissance,profession,duree_profession,telephone,domicile,ville,civilite,
  groupe_sanguin,taille,teint,race,couleur_cheveux,cicatrice_particuliere,caractere,temperament     situation_medicale,vie_sentimental,valeur_a_propos,
                      date_arrestation)
  VALUES(
                      ?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,NOW()");
                      $insertmbr->execute(array(
                      'prenom'=>$prenom,
                      'nom'=>$nom,
                      'surnom'=>$surnom,
                      'date_naissance'=>$date_naissance,
                      'lieu_naissance'=>$lieu_naissance,
                      'profession'=>$profession,
                      'duree_profession'=>$duree_profession,
                      'telephone'=>$telephone,
                      'domicilie'=>$domicilie,
                      'ville_frequente'=>$ville_frequente,
                      'situation_matrimoniale'=>$situation_matrimoniale,
                      'groupe_sanguin'=>$groupe_sanguin,
                      'taille'=>$taille,
                      'teint'=>$teint,
                      'race'=>$race,
                      'couleur_cheveux'=>$couleur_cheveux,
                      'cicatrice_particuliere'=>$cicatrice_particuliere,
                      'caractere'=>$caractere,
                      'temperament'=>$temperament,
                      'situation_medicale'=>$situation_medicale,
                      'vie_sentimental'=>$vie_sentimental,
                      'valeur_a_propos'=>$valeur_a_propos
                      ));
Afficher la suite 

Votre réponse

8 réponses

Messages postés
7
Date d'inscription
mercredi 14 novembre 2018
Dernière intervention
15 novembre 2018
0
Merci
voilà le message d'erreur qui s'affiche
Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[HY093]: Invalid parameter number: number of bound variables does not match number of tokens' in C:\Users\DRAME\Desktop\EasyPHP-12.1l\www\test\include\connect_iddentification.php:143 Stack trace: #0 C:\Users\DRAME\Desktop\EasyPHP-12.1l\www\test\include\connect_iddentification.php(143): PDOStatement->execute(Array) #1 C:\Users\DRAME\Desktop\EasyPHP-12.1l\www\test\iddentification.php(2): include('C:\Users\DRAME\...') #2 {main} thrown in C:\Users\DRAME\Desktop\EasyPHP-12.1l\www\test\include\connect_iddentification.php on line 143
jordane45
Messages postés
23551
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
9 décembre 2018
-
Compte le nombre de ?
Et compare au nombre de variables dans le execute()
darionarious
Messages postés
7
Date d'inscription
mercredi 14 novembre 2018
Dernière intervention
15 novembre 2018
-
j’ai déjà fait une comparaison et le compte est bon
jordane45
Messages postés
23551
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
9 décembre 2018
> darionarious
Messages postés
7
Date d'inscription
mercredi 14 novembre 2018
Dernière intervention
15 novembre 2018
-
Alors...où j'ai des problèmes de vue ... où tu as des soucis pour compter...


Je remarque également que dans la liste des champs... tu sembles avoir oublié une virgule...
Commenter la réponse de darionarious
Messages postés
7
Date d'inscription
mercredi 14 novembre 2018
Dernière intervention
15 novembre 2018
0
Merci
voilà mes image
jordane45
Messages postés
23551
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
9 décembre 2018
-
Ce n'est pas le code que tu nous as donné.
jordane45
Messages postés
23551
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
9 décembre 2018
-
Le souci étant de toutes facons les deux autres captures d'écran que je t'ai donné
darionarious
Messages postés
7
Date d'inscription
mercredi 14 novembre 2018
Dernière intervention
15 novembre 2018
-
j'ai rectifié après avoir vu ta réponse
Commenter la réponse de darionarious
Messages postés
7
Date d'inscription
mercredi 14 novembre 2018
Dernière intervention
15 novembre 2018
0
Merci
mes ce l’erreur y est toujours
jordane45
Messages postés
23551
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
9 décembre 2018
-
Tu as tout corrigé ?
Montre ton code...
jordane45
Messages postés
23551
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
9 décembre 2018
-
lorsqu'on utilise les requêtes avec les "?" .. on n'utilise pas un array associatif mais un array à une dimension.
array($toto,$tata$titi...)

en respectant l'ordre des champs de la requêtes.

Si tu veux utiliser un tableau associatif, il faut le faire avec les champs nommés
$sql = "INSERT into tbl ( col1, col2 )
VALUES ( :toto, :titi )"

$datas = array(':toto'=>1324, ':titi'=>$truc );
Commenter la réponse de darionarious
0
Merci
le code est là
$insertmbr=$bdd->prepare("INSERT INTO criminel3(
                      prenom, 
                      nom, 
                      surnom, 
                      date_naissance,
                      lieu_naissance,
                      profession,
                      duree_profession,
                      telephone,
                      domicile,
                      ville,
                      civilite,
                      groupe_sanguin,
                      taille,
                      teint,
                      race,
                      couleur_cheveux,
                      cicatrice_particuliere,
                      caractere,
                      temperament,
                      situation_medicale,
                      vie_sentimental,
                      valeur_a_propos,
                      date_arrestation)
Commenter la réponse de darionarious
0
Merci
VALUES(
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      NOW()");
Commenter la réponse de darionarious
0
Merci
$insertmbr->execute(array(
                      'prenom'=>$prenom,
                      'nom'=>$nom,
                      'surnom'=>$surnom,
                      'date_naissance'=>$date_naissance,
                      'lieu_naissance'=>$lieu_naissance,
                      'profession'=>$profession,
                      'duree_profession'=>$duree_profession,
                      'telephone'=>$telephone,
                      'domicilie'=>$domicilie,
                      'ville_frequente'=>$ville_frequente,
                      'situation_matrimoniale'=>$situation_matrimoniale,
                      'groupe_sanguin'=>$groupe_sanguin,
                      'taille'=>$taille,
                      'teint'=>$teint,
                      'race'=>$race,
                      'couleur_cheveux'=>$couleur_cheveux,
                      'cicatrice_particuliere'=>$cicatrice_particuliere,
                      'caractere'=>$caractere,
                      'temperament'=>$temperament,
                      'situation_medicale'=>$situation_medicale,
                      'vie_sentimental'=>$vie_sentimental,
                      'valeur_a_propos'=>$valeur_a_propos));
Commenter la réponse de darionarious
0
Merci
et voilà ce qui reviens toujours
Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[HY093]: Invalid parameter number: parameter was not defined' in C:\Users\DRAME\Desktop\EasyPHP-12.1l\www\test\include\connect_iddentification.php:184 Stack trace: #0 C:\Users\DRAME\Desktop\EasyPHP-12.1l\www\test\include\connect_iddentification.php(184): PDOStatement->execute(Array) #1 C:\Users\DRAME\Desktop\EasyPHP-12.1l\www\test\iddentification.php(2): include('C:\Users\DRAME\...') #2 {main} thrown in C:\Users\DRAME\Desktop\EasyPHP-12.1l\www\test\include\connect_iddentification.php on line 184
jordane45
Messages postés
23551
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
9 décembre 2018
-
Merci de nous coller le code en un seul morceau....
là c'est illisible et difficile de voir que tout est bone.
jordane45
Messages postés
23551
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
9 décembre 2018
-
$insertmbr=$bdd->prepare("INSERT INTO criminel3(
                      prenom, 
                      nom, 
                      surnom, 
                      date_naissance,
                      lieu_naissance,
                      profession,
                      duree_profession,
                      telephone,
                      domicile,
                      ville,
                      civilite,
                      groupe_sanguin,
                      taille,
                      teint,
                      race,
                      couleur_cheveux,
                      cicatrice_particuliere,
                      caractere,
                      temperament,
                      situation_medicale,
                      vie_sentimental,
                      valeur_a_propos,
                      date_arrestation)
                      VALUES(
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,?,?,?,?,?,?,?,NOW()");
                      $insertmbr->execute(array(
                      'prenom'=>$prenom,
                      'nom'=>$nom,
                      'surnom'=>$surnom,
                      'date_naissance'=>$date_naissance,
                      'lieu_naissance'=>$lieu_naissance,
                      'profession'=>$profession,
                      'duree_profession'=>$duree_profession,
                      'telephone'=>$telephone,
                      'domicilie'=>$domicilie,
                      'ville_frequente'=>$ville_frequente,
                      'situation_matrimoniale'=>$situation_matrimoniale,
                      'groupe_sanguin'=>$groupe_sanguin,
                      'taille'=>$taille,
                      'teint'=>$teint,
                      'race'=>$race,
                      'couleur_cheveux'=>$couleur_cheveux,
                      'cicatrice_particuliere'=>$cicatrice_particuliere,
                      'caractere'=>$caractere,
                      'temperament'=>$temperament,
                      'situation_medicale'=>$situation_medicale,
                      'vie_sentimental'=>$vie_sentimental,
                      'valeur_a_propos'=>$valeur_a_propos
                      ));
jordane45
Messages postés
23551
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
9 décembre 2018
> darionarious -
tu ne veux toujours pas lire et appliquer la réponse que je t'ai donné ????

Je vais être sympa.. je te la redonne ici directement :

orsqu'on utilise les requêtes avec les "?" .. on n'utilise pas un array associatif mais un array à une dimension.
array($toto,$tata$titi...)

en respectant l'ordre des champs de la requêtes.

Si tu veux utiliser un tableau associatif, il faut le faire avec les champs nommés
$sql = "INSERT into tbl ( col1, col2 )
VALUES ( :toto, :titi )"

$datas = array(':toto'=>1324, ':titi'=>$truc );
Commenter la réponse de darionarious
Messages postés
7
Date d'inscription
mercredi 14 novembre 2018
Dernière intervention
15 novembre 2018
0
Merci
merci et je n’avais pas bien compris pour dire vrai je demande pardon de t’avoir fatigué jordan vraiment merci
Commenter la réponse de darionarious

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.