|
Publicité | ||||||||||||||||||||||
|
|
#1 | ||
|
Invité régulier
![]() Inscription : janvier 2008 Messages : 21 ![]() |
Bonjour, je vous expose mon problème. J'ai un formulaire avec des checkbox qui récupère le nom des fichier sur un ftp en valeur. Avec les checkbox j'ai aussi plusieurs select qui récupère des éléments de ma bdd, plus un champ texte.
voici un screen pour mieux comprendre: ![]() donc j'enregistre les données de se formulaire via un méthode POST et avec une requête insert, tout marche pour le mieux pour le moment, sauf que lors de mes tests je me suis rendu compte que si je coche une checkbox en plein milieu de mon tableau en laissant des checkbox vide au dessus, alors l'insertion de se fait pas correctement dans la bdd., puis que seulement le nom du fichier y est inséré. Je pense que cela vient du fait que le rang du tableau n'est pas retrouvé pour les autres informations, alors comment faire? voici mon code d'insertion dans la bdd Code :
|
||
|
|
00
|
|
|
#2 |
![]() ![]() Vincent Inscription : juillet 2005 Messages : 14 929 ![]() |
Pour parcourir un tableau, il faut utiliser foreach().
Aller de 0 à x, ca ne marche que si le tableau est parfaitement indexé numériquement, ce qui n'est pas ton cas lorsque les cases ne sont pas toutes cochées. |
|
|
00
|
|
|
#3 | ||
|
Invité régulier
![]() Inscription : janvier 2008 Messages : 21 ![]() |
Bonsoir, alors je pense avoir suivie ton idée, mais malheureusement cela n'a pas résolu mon problème.
Seul id_fichiers est enregistré dans la bdd dans le cas ou une checkbox est laissé vide avant celle sélectionné. Je vous donne un morceau de mon code, on ne sait jamais. Code :
|
||
|
|
00
|
|
|
#4 |
![]() ![]() Vincent Inscription : juillet 2005 Messages : 14 929 ![]() |
Tu as controlé comment se presentait ton $_POST ?
|
|
|
00
|
|
|
#5 |
|
Invité régulier
![]() Inscription : janvier 2008 Messages : 21 ![]() |
|
|
|
00
|
|
|
#6 |
![]() ![]() Vincent Inscription : juillet 2005 Messages : 14 929 ![]() |
Pour le test il faut faire print_r et non echo
Je ne vois pas le lien entre tes deux copies d'écran. |
|
|
00
|
|
|
#7 | ||
|
Invité régulier
![]() Inscription : janvier 2008 Messages : 21 ![]() |
erf désolé
alors pour le print_r voici ce que j'obtiens: Code :
[IMG=http://img43.imageshack.us/img43/5306/testgv.jpg][/IMG] Même lien au cas ou : ![]() Et voila ce que je reçois en bdd : [IMG=http://img43.imageshack.us/img43/2029/test2kn.jpg][/IMG] Même lien au cas ou : ![]() Encore merci pour ta patience. |
||
|
|
00
|
|
|
#8 |
![]() ![]() Vincent Inscription : juillet 2005 Messages : 14 929 ![]() |
C'est un print_r($_POST) qu'il faut faire.
|
|
|
00
|
|
|
#9 | ||
|
Invité régulier
![]() Inscription : janvier 2008 Messages : 21 ![]() |
oula pas mal de chose
Code :
|
||
|
|
00
|
|
|
#10 | ||
![]() ![]() Vincent Inscription : juillet 2005 Messages : 14 929 ![]() |
Bon reprenons sérieusement
1 - il faut forcer l'index de tes tableaux, sinon les checkbox sont decalées par rapport aux autres champs. 2 - revoir la façon dont tu ecris tes fetch 3 - il ne faut pas faire les requêtes a chaque tour de boucle : actuellement si tu as 100 fichiers, tu vas interroger à chaque fois la base pour avoir la même liste déroulante ; tu peux même avoir une fonction pour faire tes listes, ca economise du code et il devient plus lisible Code :
|
||
|
|
00
|
|
|
#11 |
|
Invité régulier
![]() Inscription : janvier 2008 Messages : 21 ![]() |
Merci pour ton aide sabotage, et pour la rapidité de tes réponses, tu m'a vraiment bien aidé, mon problème est résolu.
merci amicalement Jounax. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com