vérification formulaire

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : vérification formulaire

par béka » 15 juin 2006, 09:13

maintenant tout marche, j'ai uniquement changer le nom du formulaire et il n'y a plus de probleme..
merci

par Invité » 14 juin 2006, 15:31

le

Code : Tout sélectionner

return check();
est l'erreur la plus courante des formulaires qui se valident tout seul.

Il FAUT que l'évènement OnSubmit reçoivent 'false' pour arrêter l'envoi du formulaire.

Mais comme tu dis l'avoir fait, je ne pensess pas que ca vienne de la.

Essayes d'ajouter cela

Code : Tout sélectionner

onSubmit="javascript:return check();"
Et de mettre un
return(false); puis un return false;, etc au tout début de ta fonction, histoire de voir si cela ne viendrai pas de la syntaxe.

par béka » 14 juin 2006, 08:05

a mettre après return check() ?

par Cyrano » 13 juin 2006, 19:42

essaye donc "return false;" sans les parenthèses...

vérification formulaire

par béka » 13 juin 2006, 16:27

Bonjour, je fais un script javascript qui permet de vérifier si des champs d'un formulaire sont correctement saisis

Voila mon code :

Code : Tout sélectionner

function check() { var msg = ""; //ici nous vérifions si le champs nom_etudiant est vide, changeons la couleur du champs et définissons un message d'alerte if (document.log_etudiant.nom_etudiant.value == "") { msg += "Veuillez saisir votre nom\n"; document.log_etudiant.nom_etudiant.style.backgroundColor = "#F3C200"; } //ici nous vérifions si le champs prenom_etudiant est vide, changeons la couleur du champs et définissons un message d'alerte if (document.log_etudiant.prenom_etudiant.value == "") { msg += "Veuillez saisir votre prénom\n"; document.log_etudiant.prenom_etudiant.style.backgroundColor = "#F3C200"; } //ici nous vérifions si le champs adresse_etudiant est vide, changeons la couleur du champs et définissons un message d'alerte if (document.log_etudiant.adresse_etudiant.value == "") { msg += "Veuillez saisir une adresse\n"; document.log_etudiant.adresse_etudiant.style.backgroundColor = "#F3C200"; } //ici nous vérifions si le champs ville_etudiant est vide, changeons la couleur du champs et définissons un message d'alerte if (document.log_etudiant.ville_etudiant.value == "") { msg += "Veuillez saisir une ville\n"; document.log_etudiant.ville_etudiant.style.backgroundColor = "#F3C200"; } //ici nous vérifions si le champs password_etudiant est vide, changeons la couleur du champs et définissons un message d'alerte if (document.log_etudiant.password_etudiant.value == "") { msg += "Veuillez saisir un mot de passe\n"; document.log_etudiant.password_etudiant.style.backgroundColor = "#F3C200"; } //ici nous vérifions si le champs cp_classe est vide, changeons la couleur du champs et définissons un message d'alerte if (document.log_etudiant.cp_etudiant.value == "") { msg += "Veuillez saisir un Code postal\n"; document.log_etudiant.cp_etudiant.style.backgroundColor = "#F3C200"; } //verif mail var email = document.log_etudiant.email_etudiant.value; if (email.search(/^[^._-][a-z0-9._-]+[^._-]@[a-z0-9._-]+([a-z0-9]+[^._-])?[.-]+[a-z]{2,4}$/) == -1) { msg += "Veuillez entrer une adresse mail valide\n"; document.log_etudiant.email_etudiant.style.backgroundColor = "#F3C200"; } //Si aucun message d'alerte a été initialisé on retourne TRUE if (msg == "") return(true); //Si un message d'alerte a été initialisé on lance l'alerte else { alert(msg); return(false); } }
et dans mon formulaire, j'appele donc cette fonction :

Code : Tout sélectionner

<form name="log_etudiant" method="post" action="enregistrement.php" onSubmit="return check();">
Seulement voila, l'enregistrement s'efectue quand même, les variables sont bien passées à la page enregistrement.php.
Les champs qui sont mal saisis apparaissent en jaune (ce qui est normal) mais j'ai pas de message d'erreur?
Pourquoi? qu'est-ce que j'ai fait de mal?