Tester si des champs sont remplis avants de les soumettre

Signaler
Messages postés
46
Date d'inscription
mercredi 15 avril 2009
Statut
Membre
Dernière intervention
26 mai 2010
-
Messages postés
46
Date d'inscription
mercredi 15 avril 2009
Statut
Membre
Dernière intervention
26 mai 2010
-
Voici mon problème je crée un questionnaire et je souhaiterais que
l'utilisateur soit obliger de répondre a toute les question avant que
se soit envoyer vers la base de donnée cepdt si je  vérifie que c
champs sont bien remplis aprés avoir soumis donc en testant l'état des
champs via une pages php au cas ou il y aurait un retour en arrière
donc des champs vide les données des pages précédente entraine une
erreur .Ainsi on m'a conseillé de travailler a l'aide de javascript mais je me demande donc s'il é possible de tester chaque champ lors d'un clic bouton et de rediriger ver la page suivante dans le cas ou tous les champs soit remplis.Auriez vous une idée de la méthode a utiliser?

38 réponses

Messages postés
4933
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
9
Bonjour,
>>possible de tester chaque champ lors d'un clic bouton et de rediriger

>>vers la page suivante dans le cas ou tous les champs sont remplis

un formulaire, le bon action, onsubmit, test des champs et return true ou false

<form action= "page à charger" onsubmit="return controle(this);" >
    tes champs de saisies...
   
</form>
<script type="text/javascript">
    function controle(frm)
    {      contrôler s'il existe des champs "vides"
                           frm. name_champ .value.length ==0
           si c'est le cas : afficher les quels
                                  return false;
          sinon : return true;
   }
</script>

Cordialement [mon Site] [M'écrire] Bul
Messages postés
4933
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
9
j'ai oublié :

et ça aussi
Messages postés
46
Date d'inscription
mercredi 15 avril 2009
Statut
Membre
Dernière intervention
26 mai 2010

Merci du renseignement je m'en vais de se pas tester tous cela et avec ceci je peux tester tous les champs donc et me rediriger sur les pages suivantes en tous cas merci bcp car sa fais deux bonnes heures facilement que je galéré la dessus
Messages postés
4933
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
9
au fait :
>>en testant l'état des champs via une pages php au cas ou il
>>y aurait un retour en arrière
ben non, pourqsuoi donc un "retour arrière" !?!?
>>donc des champs vide les données des pages précédente
non plus, suffit de les "remettre", tu en disposes !?!?
>>entraine une erreur
tu ne dois pas faire correctement les choses !!??
Messages postés
46
Date d'inscription
mercredi 15 avril 2009
Statut
Membre
Dernière intervention
26 mai 2010

J'ai bien mis ce que tu avais mis en entrant les condition du si etc. cependant lorsque la fonction retourne faux comment fais ton pour quel recharge la mm page...
Messages postés
46
Date d'inscription
mercredi 15 avril 2009
Statut
Membre
Dernière intervention
26 mai 2010

Le souci avec le test via la pages php et que lorsque je soumets la réponse s'il y a un champ vide celle ci renvoie vers la pages précédente pour que l'utilisateur finisse de remplir le questionnaire cependant au début je rentre les réponse de la page antérieur dans la base de données et donc dans le cas du retour en arrières fait ainsi il cherche les donnée a entré ds la bd
Messages postés
4933
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
9
>>lorsque la fonction retourne faux comment fait-on pour
>>qu'elle recharge la même page
si elle retourne false, le formulaire
n'est pas envoyé. on reste sur la même page.
( sans la recharger d'ailleurs )
Messages postés
4933
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
9
>>Le souci avec le test via la pages php et que lorsque je soumets
>>la réponse s'il y a un champ vide celle ci renvoie vers la pages précédente
???? fais tes contrôles... dans la même page !
c'est elle qui redirigera vers la suivante si c'est ok
par exemple

>>pour que l'utilisateur finisse de remplir le questionnaire
>>cependant au début je rentre les réponse de la page antérieur
>>dans la base de données et donc dans le cas du retour en arrières fait
>>ainsi il cherche les donnée a entré ds la bd
erreur de conception !
il ne faut stocker dans la base de données qu'en fin, si tout est bon.
( tu as pensé au cas du gars qui cliquerait sur
"revenir à la page précédente" par exemple ? )

une solution serait de transmettre les réponses aux
questions précédentes en hidden dans le formulaire
( d'autres approches sont possibles !!! )
Messages postés
46
Date d'inscription
mercredi 15 avril 2009
Statut
Membre
Dernière intervention
26 mai 2010

Oui j'y ai penser et c le problème du travail avec un navigateur cependant avec la méthode hidden cela revient a finir avec bcp de variables caché pour mes premières version je compte donc organisé cela de manière simple et je véré après comment amélioré cela en ts cas merci pour les infos cela fonctionne me reste juste a le faire dans le cas du test de 4 a 5 question en crée un booléen dans la fonction javascript
Messages postés
4933
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
9
>cela revient a finir avec bcp de variables caché
certes ? si on veut ! mais :
ça vaut mieux que d'écrire dans une base de données
un truc non fini !
je disais : tu as pensé au cas du gars qui cliquerait sur
"revenir à la page précédente"
j'ajoute : et ceux qui quittent avant d'avoir fini ???
Messages postés
46
Date d'inscription
mercredi 15 avril 2009
Statut
Membre
Dernière intervention
26 mai 2010

Ben actuellement pas vraiment mais sa sa se gère avec ma base de données comme avec la méthode que j'utilise les données se rentre avec des update mais je mi pencheré mieu kan joré finis le cablage complet on va dire par contre un souci persiste avec le javascript car ds le cas dun champ vide il recharge bien la page et dc cherche les données ammener par la méthode ce qui renvoi dc des erreurs
Messages postés
4933
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
9
>Ben actuellement pas vraiment
tu ferais mieux !
>mais sa sa se gère avec ma base de données
sûrement pas !
et, entre nous, ub ch'tiot effort sur l'orthographe
serait le bien venue... j'ai du mal à traduire !!!
Messages postés
46
Date d'inscription
mercredi 15 avril 2009
Statut
Membre
Dernière intervention
26 mai 2010

Oui enfin si ma base de donnée avec le php gère le coté retour a la page précédente et pour la fermeture de la page je vérais aprés je pense surtout que l'on me fait travailler sur un projet qui n'a pas encore été valider donc bon ...Et désolé pour l'écriture comme je tape sur deux claviers a la fois je fais a la va vite .Enfin bref je me demande simplement comment je vais pouvoir géré le fais que la page se recharge lorsque qu'un  champs est vide.Pour plus qu'il n'y ai d'erreur
Messages postés
4933
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
9
>>comment je vais pouvoir géré le fais que la page se recharge lorsque qu'un  champs est vide.
ah.... dieu me tripote... j'ai expliqué tout ça pour rien....
Messages postés
46
Date d'inscription
mercredi 15 avril 2009
Statut
Membre
Dernière intervention
26 mai 2010

Lol tu es drole a ce que je vois non t'a pas expliqué pr rien l'ami sauf que se soit avec hidden ou avec la méthode poste pour rentré directement les donnée dans la base le javascript recharge la page et donc la page cherche en vain le contenu des variables .Voila mon souci
Messages postés
4933
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
9
relis, tranquillement, mes réponses.

>>avec hidden ou avec la méthode poste
?????      strictement rien à voir !!!! ???

method="post" c'est la manière dont les données sont
          transmises donc gérées par le php ( $_GET ou $_POST )
hidden c'est du html ! ce sont des champs cachés
Messages postés
46
Date d'inscription
mercredi 15 avril 2009
Statut
Membre
Dernière intervention
26 mai 2010

Merci mais sa je le sais mais que se soit les champs cachés ou les get de la méthode POST il s'agit d'un envoie d'une page à l'autre et donc lors du chargement de la page cela demande que les données soit au préalables envoyées donc je ne vois pas comment faire...désolé si vous me trouvez quelque peu stupide ou autre mais la je ne comprend vraiment pas comment faire
Messages postés
4933
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
9
>>mais sa je le sais
ben non justement ! je ne pense pas ! car :
>>mais que se soit les champs cachés ou les get de la méthode POST
??? get de la méthode POST ???
euh
si la method du formulaire
est post, le php gère $_POST[nom du champ'],
si elle est = "get" c'est $_GET({nom du champ']
vous semblez mélanger les choses
( je ne parle même plus de hidden du coup !
  cachés ou pas, ça n'a strictement rien à voir avec la method du formulaire )

>>désolé si vous me trouvez quelque peu stupide
pas du tout.
mais prenez le temps de relire. j'ai tout dit ou presque !
il vous faut
et reprendre les bases html+php
et revoir votre conception
Messages postés
46
Date d'inscription
mercredi 15 avril 2009
Statut
Membre
Dernière intervention
26 mai 2010

Oui en tous cas il y a bien rechargement de la page lorsque qu'un champ et vide étant donnée que cela réinitialise le tout enfin je vais tenter de modifier cela pour arriver a mes faims.
Messages postés
4933
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
9
>>il y a bien rechargement de la page lorsque qu'un champ
>>et vide étant donnée que cela réinitialise le tout
bien sûr !!!!!
mais malgré tout, si vous le faites comme ça !!!!
le php crée,renvoie la page à afficher ! c'est son rôle !
relisez donc ce que je vous proposais :
faire les contrôles dans la même page, c'est
elle qui se chargera d'enchaîner sur la suivante
( par exemple ), les champs saisis , vous en
disposez !