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 :

Gerer l'erreur du point apres l'arobase


Sujet :

JavaScript

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    263
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 263
    Par défaut Gerer l'erreur du point apres l'arobase
    Bonjour a tous, j'ai utilisé l'outil comportement dans Dreamweaver pour gerer les mauvaise syntaxes et le nom remplissage du champ texte email.

    Il ma donné un script javascript qui fonctionne relativment bien, mais par contre il ne gere pas l'oubli de metre obligatoirement un point apres l'arobase...


    Je ne connais pas trop le language Javascript, donc si vous pouriez me donner un ptit coup de main ca serai sympa...

    Mon code:

    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
    <script type="text/javascript">
    <!--
    function MM_validateForm() { //v4.0
      if (document.getElementById){
        var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
        for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=document.getElementById(args[i]);
          if (val) { nm=val.name; if ((val=val.value)!="") {
            if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
              if (p<1 || p==(val.length-1)) errors+='Un '+nm+' doit contenir un @ un point.\n';
            } else if (test!='R') { num = parseFloat(val);
              if (isNaN(val)) errors+='- '+nm+' doit contenir un nombre.\n';
              if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
                min=test.substring(8,p); max=test.substring(p+1);
                if (num<min || max<num) errors+='- '+nm+' doit contenir un nombre entre '+min+' and '+max+'.\n';
          } } } else if (test.charAt(0) == 'R') errors += 'Un '+nm+' est requi(se).\n'; }
        } if (errors) alert('Une erreur s est produite :\n'+errors);
        document.MM_returnValue = (errors == '');
    } }
    //-->
    </script>


    Merci d'avance!!!

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 658
    Billets dans le blog
    1
    Par défaut
    tout ça peut se faire en 3 lignes avec les expressions régulières ...

    http://www.developpez.net/forums/sho...d.php?t=530104
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    263
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 263
    Par défaut
    Merci pour ton lien, bon je t'avou que j'ai pas compri comment implanter le code et comment l'apler...


    Dans les balises head je met ce code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
     
    function verif_email() {
     
    var email= Myform.elements['email].value;
     var re=new RegExp("^[a-zA-Z0-9\-_]+[a-zA-Z0-9\.\-_]*@[a-zA-Z0-9\-_]+\.[a-zA-Z\.\-_]{1,}[a-zA-Z\-_]+","i");
     
     if (!reg.test(email)){ErrMsg+="Veuillez saisir une adresse email valide\n";
    					SendFocus=(SendFocus!=undefined)?SendFocus:Myform.elements['email'];}
     
     }


    Et mon champ texte:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <input name="email" type="text" class="champtexte" id="email" accesskey="a" tabindex="1"/>

    Bon sans surprise, sa ne fonctionne pas, pouvez vous me dir mes erreurs...


    Merci d'avance!!!!

  4. #4
    Membre Expert
    Inscrit en
    Septembre 2002
    Messages
    2 307
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 2 307
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var email= getElementById('email').value;

  5. #5
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 658
    Billets dans le blog
    1
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    function verif_email() {
     var email= document.getElementById('email').value;
     var re=new RegExp("^[a-zA-Z0-9\-_]+[a-zA-Z0-9\.\-_]*@[a-zA-Z0-9\-_]+\.[a-zA-Z\.\-_]{1,}[a-zA-Z\-_]+","i");
     
     if (!reg.test(email)){alert("Veuillez saisir une adresse email valide.");
    					SendFocus=(SendFocus!=undefined)?SendFocus:Myform.elements['email'];}
    return false; 
     }
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    263
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 263
    Par défaut
    Je vais tester, merci!!!

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    263
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 263
    Par défaut
    J'ai changé la syntaxe javascript avec le script que tu ma donné, mais il ne ce passe rien, je bloque, j'vous met toute ma page, dite moi si vous avez besoin de la page php aplé, mais je ne pense pas que ca a quelque chose a voir...

    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
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
     
     
    <script type="text/javascript">
    <!--
    function verif_email() {
     var email= document.getElementById('email').value;
     var re=new RegExp("^[a-zA-Z0-9\-_]+[a-zA-Z0-9\.\-_]*@[a-zA-Z0-9\-_]+\.[a-zA-Z\.\-_]{1,}[a-zA-Z\-_]+","i");
     
     if (!reg.test(email)){alert("Veuillez saisir une adresse email valide.");
    					SendFocus=(SendFocus!=undefined)?SendFocus:Myform.elements['email'];}
    return false; 
     }
     
    //-->
    </script>
    <script src="Scripts/AC_RunActiveContent.js" type="text/javascript"></script>
    </head>
     
    <body>
     
    <table id="page-table"><tr><td id="page-td">
     
    <div id="conteneur">
     
    	        <div id="contenu">
     
     
    		 <iframe name="contenu" src="http://google.fr" width="530" height="430" scrolling="auto" frameborder="0">accueil</iframe>
           </div> 
     
     
    	                  <div id="e_mail">
     
                   <p class="p">Abonnez vous à la lettre d'actualité </p>
                  <p class="p"> PUBLICORE et profitez d'offres exclusive</p> 
                  <p class="p"> sur les produits de communication toute</p> 
                   <p class="p">l'année!</p>
     
                   <p class="p2">VOTRE E-MAIL</p>
     
    <form method=post target="contenu" action="script/email.php"  name="client">
     
                       <label>
                       <input name="email" type="text" class="champtexte" id="email" accesskey="a" tabindex="1"/>
     
                       </label>
                       <input type="hidden" name="action" value="ajout_formulaire" />
     
                       <label>
                       <input type="image" src="image/bouton_mail.gif" alt="ok" name="bouton_mail" id="bouton_mail" value="Envoyer" accesskey="b" tabindex="2"/>
                	   </label>
                     </form>
            </div>
     
     
    </td></tr></table>
     
     
    </body>


    Merci pour votre aide!!!

  8. #8
    Membre éprouvé Avatar de shaun_the_sheep
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Octobre 2004
    Messages
    1 619
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2004
    Messages : 1 619
    Par défaut
    Salut,

    A quel moment tu appelles ton script verif_email() ?

  9. #9
    Membre Expert
    Avatar de Jumano
    Profil pro
    Inscrit en
    Février 2007
    Messages
    1 163
    Détails du profil
    Informations personnelles :
    Âge : 57
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Février 2007
    Messages : 1 163
    Par défaut
    Bonjour,
    Comme le dit beegood à aucun moment tu n'appelles la fonction ...
    Ensuite c'est "var reg =" et non "var re =", ce qui te donne ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <script type="text/javascript" type="text/javascript">
    <!--
    function verif_email() {
     var email = document.getElementById('email').value;
     var reg = new RegExp("^[a-zA-Z0-9\-_]+[a-zA-Z0-9\.\-_]*@[a-zA-Z0-9\-_]+\.[a-zA-Z\.\-_]{1,}[a-zA-Z\-_]+","i");
     
    if (!reg.test(email)){
    alert("Veuillez saisir une adresse email valide.");
    document.getElementById('email').focus();
    return false; 
    }
    } 
    //-->
    </script>
    Et dans ta balise <form> :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <form method="post" target="contenu" action="script/email.php"  name="client" onsubmit="return verif_email();">

  10. #10
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    263
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 263
    Par défaut
    Effectivment sa fonctionne mieux comme sa...


    Merci beaucoup pour votre aide!!!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Erreur de compilation après modification du Uses
    Par DevelOpeR13 dans le forum Langage
    Réponses: 5
    Dernier message: 30/10/2007, 14h23
  2. Coordonnées d'un point après transformations.
    Par fb57 dans le forum OpenGL
    Réponses: 3
    Dernier message: 19/09/2005, 18h39
  3. Erreur validation fichier après un OpenDialog
    Par jackrabbit dans le forum Langage
    Réponses: 2
    Dernier message: 24/08/2005, 13h28
  4. [SAX] Comment gerer les erreurs soulevés par sax
    Par tipaquo dans le forum Format d'échange (XML, JSON...)
    Réponses: 4
    Dernier message: 03/07/2005, 12h00
  5. [Htaccess] Gérer les erreurs HTTP du type 404...
    Par Marshall_Mathers dans le forum Apache
    Réponses: 4
    Dernier message: 01/07/2004, 10h29

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