IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

regex et validation de formulaire


Sujet :

JavaScript

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 4
    Points : 3
    Points
    3
    Par défaut regex et validation de formulaire
    Bonjour, j'ai un problème sur mon code, quand je rentre un email non conforme et un age non conforme, il me le valide quand même, je cherche l'erreur mais je ne trouve pas, je suppose qu'elle se trouve dans les expressions régulières.

    Merci d'avance

    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
    25
    26
    27
    28
    29
    function verification(){
     
    	var nom = document.formulaire.Nom.value;
    	var prenom = document.formulaire.Prenom.value;
    	var age = document.formulaire.Age.value;
    	var commentaire = document.formulaire.Commentaire.value;
    	var mail = document.formulaire.Email.value;
     
    	var Ermail = /^[a-z0-9._-]+@[a-z0-9.-]{2,}[.][a-z]{2,3}$/
    	var Erage = /[0-9]{3}/;
     
    	if(nom == ""){
    		alert("Le nom saisi est incorrect");
    		return false;
    	}else if(prenom == ""){
    		alert("Le prénom saisi est incorrect");
    		return false;
    	}else if(age == ""){
    		alert("Age incorrect");
    		return false;
    	}else if(mail == ""){
    		alert("l'Email est incorrect");
    		return false;
    	}else if (commentaire == ""){
    		alert("Le commentaire est vide");
    		return false;
    	}
    	return true;
    }

  2. #2
    Expert confirmé
    Avatar de RomainVALERI
    Homme Profil pro
    POOête
    Inscrit en
    Avril 2008
    Messages
    2 652
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : POOête

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 652
    Points : 4 164
    Points
    4 164
    Par défaut
    Bonjour et bienvenue à toi ^^

    Juste deux petites précautions :

    >>> quand tu postes un extrait de code, pense à l'entourer de balises [code][/code] (il y a même un joli bouton pour ça ), c'est beaucoup plus lisible... quand le code est indenté correctement )

    >>> le tag "encodage" concerne les problèmes d'encodage des caractères, tu as dû faire la confusion, mais ce n'est pas grave

    Pour ce qui est du problème technique que tu te poses... nous y voilà

    >>> les expressions régulières ne risquent pas de poser le moindre problème ici : tu les déclares mais ne les utilises pas... il te manque quelque chose comme :
    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if (!Ermail.test(mail)) {
       return false;
    }

    >>> Après, pour la conformité de tes regexp, à vue de nez elles ont l'air correctes mais au bout du compte ça ne dépend que de tes spécifications. (à toi de définir ce qui doit être accepté/rejeté)

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 4
    Points : 3
    Points
    3
    Par défaut
    Désolée, je suis nouvelle, je ne savais pas comment mettre en forme le code
    En tout cas, c'était bien cela l'erreur, il faut que je revoie les Regexp, pour l'émail c'est bon, mais pour l'âge ...
    Merci beaucoup pour aide !
    Bonne soirée (nuit)

  4. #4
    Expert confirmé
    Avatar de RomainVALERI
    Homme Profil pro
    POOête
    Inscrit en
    Avril 2008
    Messages
    2 652
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : POOête

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 652
    Points : 4 164
    Points
    4 164
    Par défaut
    Somnambulisme + refactorisation + bénévolat = ???

    Réponse :
    Code javascript : 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
    function verification() {
       var f = document.formulaire;
       var nom = f.Nom.value;
       var prenom = f.Prenom.value;
       var age = f.Age.value;
       var commentaire = f.Commentaire.value;
       var mail = f.Email.value;
     
       var Ermail = /^[a-z0-9._-]+@[a-z0-9.-]{2,}[.][a-z]{2,3}$/
       var Erage = /[0-9]{3}/;// 3 chiffres, pas moins ?! wow c'est un site pour centenaires ;-)
       var erreurs = [];
     
       if (!nom) erreurs.push("Le nom n'est pas renseigné.");
       if (!prenom) erreurs.push("Le prénom n'est pas renseigné.");
       if (!age) erreurs.push("L'âge n'est pas renseigné.");
       if (!mail) erreurs.push("L'email n'est pas renseigné.");
       if (!commentaire) erreurs.push("Le commentaire n'est pas renseigné.");
       if (mail && Ermail.test(mail)) erreurs.push("Le format de l'email n'est pas valide.");
       if (age && Erage.test(age)) erreurs.push("L'âge doit être composé de chiffres exactement.");
       if (erreurs.length > 0) {
          alert("Le formulaire n'a pas pu être validé car :\n\n" + erreurs.join("\n"));
       }
       return (erreurs.length == 0);
    }
    ... avec de cette manière le petit intérêt supplémentaire de faire pour l'utilisateur un petit récapitulatif des erreurs rencontrées à la validation. Plutôt que de résoudre un premier problème, avoir un autre message d'erreur, etc.

Discussions similaires

  1. validation du formulaire de la page ouvrante d'un popup
    Par noa dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 10/08/2005, 12h11
  2. Réponses: 5
    Dernier message: 24/05/2005, 11h21
  3. Valider un formulaire contenu dans une iframe
    Par snoopy5.0 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 28/04/2005, 11h14
  4. Valider un formulaire par une image
    Par Fleep dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 31/10/2004, 01h50
  5. [Struts]Validation de formulaire
    Par djoukit dans le forum Struts 1
    Réponses: 4
    Dernier message: 12/03/2004, 09h12

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo