Probleme d'insertion

Résolu
darionarious
Messages postés
7
Date d'inscription
mercredi 14 novembre 2018
Statut
Membre
Dernière intervention
15 novembre 2018
- Modifié le 14 nov. 2018 à 13:10
darionarious
Messages postés
7
Date d'inscription
mercredi 14 novembre 2018
Statut
Membre
Dernière intervention
15 novembre 2018
- 15 nov. 2018 à 22:12
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
                      ));
A voir également:

8 réponses

darionarious
Messages postés
7
Date d'inscription
mercredi 14 novembre 2018
Statut
Membre
Dernière intervention
15 novembre 2018

14 nov. 2018 à 13:17
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
0
jordane45
Messages postés
35487
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 mai 2022
356
14 nov. 2018 à 13:33
Compte le nombre de ?
Et compare au nombre de variables dans le execute()
0
darionarious
Messages postés
7
Date d'inscription
mercredi 14 novembre 2018
Statut
Membre
Dernière intervention
15 novembre 2018

14 nov. 2018 à 21:52
j’ai déjà fait une comparaison et le compte est bon
0
jordane45
Messages postés
35487
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 mai 2022
356 > darionarious
Messages postés
7
Date d'inscription
mercredi 14 novembre 2018
Statut
Membre
Dernière intervention
15 novembre 2018

14 nov. 2018 à 23:02
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...
0
darionarious
Messages postés
7
Date d'inscription
mercredi 14 novembre 2018
Statut
Membre
Dernière intervention
15 novembre 2018

Modifié le 15 nov. 2018 à 00:06
voilà mes image
0
jordane45
Messages postés
35487
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 mai 2022
356
15 nov. 2018 à 00:13
Ce n'est pas le code que tu nous as donné.
0
jordane45
Messages postés
35487
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 mai 2022
356
15 nov. 2018 à 00:14
Le souci étant de toutes facons les deux autres captures d'écran que je t'ai donné
0
darionarious
Messages postés
7
Date d'inscription
mercredi 14 novembre 2018
Statut
Membre
Dernière intervention
15 novembre 2018

15 nov. 2018 à 00:15
j'ai rectifié après avoir vu ta réponse
0
darionarious
Messages postés
7
Date d'inscription
mercredi 14 novembre 2018
Statut
Membre
Dernière intervention
15 novembre 2018

15 nov. 2018 à 00:19
mes ce l’erreur y est toujours
0
jordane45
Messages postés
35487
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 mai 2022
356
15 nov. 2018 à 07:06
Tu as tout corrigé ?
Montre ton code...
0
jordane45
Messages postés
35487
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 mai 2022
356
15 nov. 2018 à 07:44
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 );
0
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)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
VALUES(
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      ?,
                      NOW()");
0
$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));
0
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
0
jordane45
Messages postés
35487
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 mai 2022
356
15 nov. 2018 à 11:11
Merci de nous coller le code en un seul morceau....
là c'est illisible et difficile de voir que tout est bone.
0
jordane45
Messages postés
35487
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 mai 2022
356
15 nov. 2018 à 11:12
0
$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
                      ));
0
jordane45
Messages postés
35487
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 mai 2022
356 > darionarious
15 nov. 2018 à 11:47
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 );
0
darionarious
Messages postés
7
Date d'inscription
mercredi 14 novembre 2018
Statut
Membre
Dernière intervention
15 novembre 2018

15 nov. 2018 à 22:12
merci et je n’avais pas bien compris pour dire vrai je demande pardon de t’avoir fatigué jordan vraiment merci
0