Bjr,
Je voudrais savoir comment faire pour obliger les visiteurs à remplir tous les champs d'un formulaire en asp
merci de m'aider..
Bjr,
Je voudrais savoir comment faire pour obliger les visiteurs à remplir tous les champs d'un formulaire en asp
merci de m'aider..
Bonjour,
Si tu veux faire ca en asp, il faut que tu récupères les valeurs de tes différents champs avec deset si l'un est vide, tu empeches tout traitement.
Code : Sélectionner tout - Visualiser dans une fenêtre à part request.form("nom_champ")
Ainsi l'utilisateur doit obligatoirement remplir l'ensemble des champs du form.
ok merci mais justement comment empecher tout traitement?
Rediriges l'utilisateur vers le formulaire si un des champs est vide :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 if request.form("nom_champ") = "" then response.redirect("nompage") then
Bonjour,
Tu as également la solution javascript. Sur le onsubmit de ton formulaire, tu appelles une fonction javascript qui vérifie que tous tes champs sont saisis et le cas échéant affiche un message (fonction alert()) ou valide le formulaire (fonction submit()).
Avec cette méthode, il n'y a pas d'accès au serveur. Les vérif se font en local.
Yop!
J'utilise souvent ce genre de code: (purée, où est passée la balise CODE?...Ha oui, c'est le #)
Dans la page d'action:
Et dans le formulaire, j'initialise les champs par la valeur de l'objet de la collection request.form portant le même nom:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 errfound = 0 For each field in request.form If len(request.form(field)) = 0 then errfound = 1 Response.write "Le champ " & field & " est vide.<br>" End if Next If errfound = 0 then ce que la page doit faire si tous les champs sont remplis Else Response.write "<form action='ton_formulaire.asp' method=post>" For each field in request.form Response.write "<input type=hidden name='" & field & "' value='" & request.form(field) & "'>" Next Response.write "<input type=submit value='Retour Au Formulaire'>" Response.write "</form>" End if
Quand le formulaire est affiché pour la première fois, aucun des objects de la collection request.form n'existe, donc tous les champs sont vides.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 Response.write "<input type=text name='champ1' value='" & request.form("champ1") & "'>" Response.write "<input type=text name='champ2' value='" & request.form("champ2") & "'>" .....
Si l'utilisateur est renvoyé au formulaire, les champs qu'il avait complétés auparavant le seront de nouveau, ce qui lui évite de devoir recommencer.
Ryan
Un ascenseur est une machine qui passe quand même la moitié de son temps à descendre.
SALUT
je vais vous donner un exemple
vous avez besoin de deux page asp
page1: contient le formulaire (deux zones de texte une pour le nom et l'autre pour l'email) mais prés de chaque zone de texte on ecrit le code :et :
Code : Sélectionner tout - Visualiser dans une fenêtre à part <%=session("messagenom")%>page2 : dans cette page asp on vas vérifier si les zones sont vide ou bien ont des valeur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part <%=session("messageemail")%>
ALOR on écrit
aller boncourage...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 if request.form("nom") or request.form("email") then if request.form("nom")="" then session("messagenom")="saisissez votre nom svp !" else session("messageemail")="saisissez votre email svp !" end if response.redirect("page1.ASP") else ici le code d'ajout(au cas de remplissage de tout les zones) session("messagenom")="" session("messageemail")="" end if
Edité par immobilis pour les balises de code.
Salut,
La methode de ryan est pas mal je trouve. Elle a l'avantage de ne pas surcharger le serveur en variables de session.
De plus elle a l'air facilement adaptable à tous les formulaires le nom des champs étant générique.
A+
"Winter is coming" (ma nouvelle page d'accueil)
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager