|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité de passage
![]() Inscription : janvier 2012 Messages : 10 ![]() |
Bonjour,
J'ai réaliser un formulaire php avec vérification des champs et réaffichage des champs validés. Ca marche très bien pour mes champs textes mais ça ne marche pas du tout (après bien des recherches!) pour les champs de liste déroulante. Ainsi si vous choisissez un élément de la liste "date" sans remplir le champs "nom" un message d'erreur apparaît mais le choix de la liste n'est pas réaffiché. Voici un bout de mon code php que j'ai simplifié pour vous ;-) . Merci pour votre aide précieuse ! Code :
|
||
|
|
00
|
|
|
#2 |
|
Expert Confirmé
![]() ![]() |
Bonsoir,
Quand tu renvois ton formulaire, pour réafficher la valeur sélectionnée il faut que tu recérés ta liste en déterminant à quelle valeur tu dois rattacher l'attribut selected="selected". Au final tu dois avoir la ligne sélectionnée écrite comme ceci : Code :
<option value="11" selected="selected">11</option>
__________________
# Dans la Création, tout est permis mais tout n'est pas utile... |
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : janvier 2012 Messages : 10 ![]() |
Merci pour ta réponse mais comment faire pour recréer la liste ?
|
|
|
00
|
|
|
#4 | ||
|
Expert Confirmé
![]() ![]() |
Comme ça :
Code :
__________________
# Dans la Création, tout est permis mais tout n'est pas utile... |
||
|
00
|
|
|
#5 |
|
Invité de passage
![]() Inscription : janvier 2012 Messages : 10 ![]() |
Superbe, ça marche ! Je te remercie beaucoup.
Par contre je n'arrive pas à adapter ta démarche pour une liste d'items non ordonnées, comme "Pierre", "Paul", "Jacques"... ? |
|
|
00
|
|
|
#6 |
|
Expert Confirmé
![]() ![]() |
Pour une liste non ordonnée, utilises foreach() à la place de for()
__________________
# Dans la Création, tout est permis mais tout n'est pas utile... |
|
00
|
|
|
#7 | ||
|
Invité de passage
![]() Inscription : janvier 2012 Messages : 10 ![]() |
Bon, j'ai essayé d'utiliser foreach comme tu me l'as proposé mais c'est pas fameux... Apparemment il faut l'utiliser dans un array ?
Code :
|
||
|
|
00
|
|
|
#8 | ||
|
Expert Confirmé
![]() ![]() |
T'y étais presque :
Code :
__________________
# Dans la Création, tout est permis mais tout n'est pas utile... |
||
|
00
|
|
|
#9 | ||
|
Invité de passage
![]() Inscription : janvier 2012 Messages : 10 ![]() |
J'y suis presque mais pourtant j'y suis pas ! ;-)
J'ai pourtant fait tout comme tu m'as dit mais les mois ne veulent pas s'afficher. Arghh ! Code :
|
||
|
|
00
|
|
|
#10 | ||
|
Expert Confirmé
![]() ![]() |
Euh faut adapter son code un peu quand même avant de copier-coller :
Code :
__________________
# Dans la Création, tout est permis mais tout n'est pas utile... |
||
|
00
|
|
|
#11 | ||
|
Invité de passage
![]() Inscription : janvier 2012 Messages : 10 ![]() |
Oui, merci ça prend forme !!! Ultime souci : la vérification de ce dernier champs (mois) ne s'effectue plus comme avant (le message d'alerte ne s'affiche pas si ce champs n'est pas renseigné). J'ai essayé de réparer ce problème en m'inspirant du champs ma_date qui lui fonctionne mais visiblement la règle ne s'applique pas de la même façon... Tu aurais une idée ? Après promis je t'embête plus ! ;-)
Code :
|
||
|
|
00
|
|
|
#12 | ||
|
Expert Confirmé
![]() ![]() |
Je me suis permis de reprendre ton code afin d'améliorer un peu tout ça :
Code :
__________________
# Dans la Création, tout est permis mais tout n'est pas utile... |
||
|
00
|
|
|
#13 |
|
Invité de passage
![]() Inscription : janvier 2012 Messages : 10 ![]() |
Merci pour ton joli nettoyage mais dans ta proposition la vérification sur les listes déroulantse ne se fait toujours pas puisque par défaut tu proposes "1" pour le jour et "Janvier" pour le mois alors qu'il faudrait "Jour" et "Mois" par défaut dans le menu et s'il n'y a pas de jour ou de mois sélectionné alors le message d'alerte s'affiche. Dis-moi si je ne suis pas très clair ??
|
|
|
00
|
|
|
#14 | ||
|
Expert Confirmé
![]() ![]() |
J'ai repris le code en tenant compte de tes désirs (c'est pas beau ça ?
Code :
__________________
# Dans la Création, tout est permis mais tout n'est pas utile... |
||
|
00
|
|
|
#15 | ||
|
Invité de passage
![]() Inscription : janvier 2012 Messages : 10 ![]() |
C'est très sympa de ta part. C'est un code très propre. J'espère que ça servira à beaucoup d'autres également !
J'ai passé une partie du week-end à adapter tes infos sur le reste de mon formulaire mais au final j'ai une erreur que j'ai localisé dans la partie d'envoi du mail qui n'a pas l'air d'être compatible avec ton code. Voici le bout concerné : Code :
|
||
|
|
00
|
|
|
#16 | |
|
Expert Confirmé
![]() ![]() |
Bonsoir,
La raison pour laquelle j'ai utilisé if () { ... } if () { ... } et pas if () { ... } elseif () { ... } est très simple : cette structure permet d'empiler les erreurs de saisie de l'utilisateur. Si par exemple, il a oublié de renseigner son Nom et son Prénom, ma version interceptera les deux erreurs alors que la tienne s'arrêtera juste au nom oublié. Citation:
__________________
# Dans la Création, tout est permis mais tout n'est pas utile... |
|
|
00
|
|
|
#17 | ||
|
Invité de passage
![]() Inscription : janvier 2012 Messages : 10 ![]() |
Oui, j'avais bien compris ton but en utilisant le "if" plutôt que "elseif" mais je préfère qu'il n'y ai qu'une ligne d'alerte plutôt que 10 car sinon ça pête ma mise en page (sorry). Comme je te disais, une fois tout le formulaire intégré, j'ai une erreur de syntaxe au final que je n'avais pas précédemment. Ca doit venir de la partie concernant l'envoi du formulaire peut-être pas "compatible" avec le reste. Je t'avais proposé la partie du code concernée dans mon précédent post mais voici maintenant le code de (presque) toute la page. Je te remercie une nouvelle fois pour ton aide précieuse et j'espère bientôt boucler ce formulaire !!! ;-)
Code :
|
||
|
|
00
|
|
|
#18 | ||||
|
Expert Confirmé
![]() ![]() |
Après avoir parcouru ton code, j'ai remarqué que tu avais un certain nombre de tags avec deux attributs id :
Code :
Code :
Et enfin pour l'erreur dans la partie mail, je veux bien l'admettre mais ne sachant pas quelle erreur tu obtiens exactement, je ne pourrais t'être d'un grand secours.
__________________
# Dans la Création, tout est permis mais tout n'est pas utile... |
||||
|
00
|
|
|
#19 |
|
Invité de passage
![]() Inscription : janvier 2012 Messages : 10 ![]() |
Après avoir tranquillement relu et corrigé mon code ce week-end + quelques recherches sur le net, j'ai pu enfin faire fonctionner convenablement mon formulaire. Donc un grand merci à toi pour ton aide et ta patience !
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com