|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||
|
Invité de passage
![]() Inscription : mai 2010 Messages : 8 ![]() |
Bonjour,
j'ai réussi à faire fonctionner une petite base de donnée en PHP qui se rempli au moyen d'un formulaire. Mon formulaire fonctionne parfaitement lorsque j'utilise des input de type "text", mais j'aurai besoin de mettre en plus, à présent, des input de type "checkbox" et c'est là que le problème se manifeste. Si je ne coche pas les cases alors rien ne s'ajoute dans ma base de donnée. Par contre si je coche toutes les cases alors ça fonctionne (et ça ajoute bien le mot "oui" comme je le souhaite dans ma base de donnée). Si quelqu'un pouvait me corriger mon script ce serait vraiment bien car je commence à désespérer, voici le code source de mes 2 pages : La première page intitulée "index" : Code :
Code :
|
||||
|
|
00
|
|
|
#2 | ||
![]() ![]() Vincent Inscription : juillet 2005 Messages : 14 929 ![]() |
Avant de desesperer, il faut debuguer et pour debuguer il faut afficher les erreurs dans ton code.
Il faut savoir qu'une checkbox non cochée ne transmet rien par POST Code :
|
||
|
|
10
|
|
|
#3 | ||||
|
Membre Expert
![]() Inscription : juin 2007 Messages : 2 278 ![]() |
Bonjour,
cela ne marche pas comme cela. Il faut par exemple que tu stockes tes checkbox dans un tableau est qui envoyé à ta page de traitement. Ensuite, tu regardes si la valeur (value) de tes checkbox se trouvent dans ton tableau. Si oui : la valeur est cochée ; si non : elle n'est pas cochée Code php :
Code php :
|
||||
|
|
00
|
|
|
#4 |
|
Invité de passage
![]() Inscription : mai 2010 Messages : 8 ![]() |
Je n'arrive toujours pas à faire fonctionner le script, qu'est ce que je met dans chacune des pages "formulaire-suite" et "index". Je m'y perd un peu.
|
|
|
00
|
|
|
#5 |
|
Membre Expert
![]() Inscription : juin 2007 Messages : 2 278 ![]() |
C'est simple : dans formulaire-suite tu mets tout ton php
Montre nous tes 2 fichiers stp |
|
|
00
|
|
|
#6 | |||||
|
Invité de passage
![]() Inscription : mai 2010 Messages : 8 ![]() |
Citation:
La première page intitulée "index.php" : Code :
Code :
|
|||||
|
|
00
|
|
|
#7 |
|
Membre Expert
![]() Inscription : juin 2007 Messages : 2 278 ![]() |
tes champs Nom, Paris, Lyon sont de quel type en base ?
|
|
|
00
|
|
|
#8 |
|
Invité de passage
![]() Inscription : mai 2010 Messages : 8 ![]() |
|
|
|
00
|
|
|
#9 | ||
|
Membre Expert
![]() Inscription : juin 2007 Messages : 2 278 ![]() |
Ca donne quoi si tu fais ca ?
Code php :
|
||
|
|
00
|
|
|
#10 | ||||
|
Invité de passage
![]() Inscription : mai 2010 Messages : 8 ![]() |
J'ai suivi ton conseil, j'ai mis les champs "Paris" et "Lyon" en type "tinyint". A présent que faire pour que lorsque je coche la case paris et/ou lyon on voit le n°1, et que lorsque la ou les cases ne sont pas cochées alors on ait 0 dans ma base de donnée. Encore merci pour ton aide, c'est vraiment appréciable. Je bloque sur ce détail qui commence à me désespérer.
La première page intitulée "index.php" : Code :
Code :
|
||||
|
|
00
|
|
|
#11 | ||
|
Membre Expert
![]() Inscription : juin 2007 Messages : 2 278 ![]() |
créer un champs de type text pour stocker oui ou non est une aberration. Tu dois créer un champs de type tinyint et stocker 1 ou 0 plutôt.
Ajoutes ceci avant l'insertion en base afin de contrôler les valeurs : Code php :
Les valeurs sont elles conformes à tes attentes ? |
||
|
|
00
|
|
|
#12 | |||||||
|
Invité de passage
![]() Inscription : mai 2010 Messages : 8 ![]() |
Citation:
La première page intitulée "index.php" : Code :
Code :
|
|||||||
|
|
00
|
|
|
#13 | ||
|
Membre Expert
![]() Inscription : juin 2007 Messages : 2 278 ![]() |
Que donne ceci en base ?
Code php :
EDIT: le champs nom se récupérère via $_POST['nom']; |
||
|
|
00
|
|
|
#14 | ||
|
Invité de passage
![]() Inscription : mai 2010 Messages : 8 ![]() |
C'est tout bon j'ai fini par trouver la réponse, je remercies les membres de ce forum qui m'ont apportés des idées. Voici la solution du problème pour les prochain qui comme moi seront confrontés à ce genre de problème.
Code :
|
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com