Pb masque email

Shankara Messages postés 28 Statut Membre -  
thomas_- Messages postés 97 Statut Membre -
Bonjour à tous !
J'essaie de créer un masque pour vérifier l'adresse email saisie dans un formulaire.
/***   Vérification de la validité de l'adresse saisie (valide si la chaîne est de la forme nom@domaine.extension)   ***/
$pattern="/^[a-zA-Z0-9._-]+(?<!.)@[a-zA-Z0-9-]{2,}\.[a-zA-Z]{2,4}$/";
if (preg_match($pattern,$_REQUEST['new_email_add'])) :
     $valid=1;
else :
     $valid=0;
     ModifChamp("form_add_email","new_email_add",$_REQUEST['new_email_add']);
     Alert('L\'adresse saisie n\'est pas valide\r\nElle doit être de la forme nom@domaine.extension avec :\r\n- nom : caractères alphanumériques, tiret (-) ou caractère souligné (_)\r\n- domaine : caractères alphanumériques, tiret (-) (au moins 2 caractères)\r\n- extension : 2 à 4 caractères alphanumériques');
endif;


Malheureusement, ce code ne fonctionne pas. Quelqu'un peut me dire pourquoi svp ? Merci
Configuration: Windows XP
Internet Explorer 7.0

1 réponse

  1. thomas_- Messages postés 97 Statut Membre 44
     
    As tu pensé à une solution alternative j'ai nommé le javascript, exemple :

    - exemple :

    <html>
    <head>
    <script type="text/javascript">
    function verif_email(frm)
    {
    var email = document.formulaire.email.value;
    var mess = "";
    var place = email.indexOf("@",1);
    var point = email.indexOf(".", place+1);
    if (email == "") mess += "ERREUR : Renseignez correctement votre email svp. \n";
    if (!((place > -1) && (email.length > 2) && (point > 1) && (email != "")))
    {
    mess += "ERREUR : Entrez une adresse email valide svp. \n";
    }
    if (mess != "")
    {
    alert (mess);
    return false;
    }
    else
    {
    return true;
    }
    }
    </script>
    </head>
    <body>
    <form name="formulaire" onsubmit="return verif_email(this)" method="post">
    <input type="text" name="email" maxlength="32" />
    <input type="submit" value="Valider" />
    </form>
    </body>
    </html>

    J'espère que ça t'aidera :)

    Thomas
    0