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 :

Test de formulaire


Sujet :

JavaScript

  1. #1
    Membre à l'essai
    Inscrit en
    Février 2014
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Février 2014
    Messages : 41
    Points : 20
    Points
    20
    Par défaut Test de formulaire
    Bonjour,

    j'ai un formulaire avec différents test sur les champs j'ai un test sur le champ Téléphone de tel façon seul les chiffres sont accepté je voudrais autoriser en plus les espace voici le code utilisé :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    var regex = new RegExp(/^[0-9]{8}/gi);
    if(document.form1.telfixe.value==''){
    alert("le numéro téléphone est obligatoire!");
    return false;
    }
    else if(document.form1.telfixe.value != "" && !regex.test(document.form1.telfixe.value)){
    	alert("le numéro téléphone n'est pas valide");
    	return false;
    }
    le test il marche je veux juste autoriser en plus les epsaces merci.

    Cordialement.

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    var regex = new RegExp(/^[0-9]{8}/gi);
    phone = document.form1.telfixe.value.replace(' ','');
    if(phone == ''){
    alert("le numéro téléphone est obligatoire!");
    return false;
    } 
    else if(!regex.test(phone)){
    	alert("le numéro téléphone n'est pas valide");
    	return false;
    }
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre à l'essai
    Inscrit en
    Février 2014
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Février 2014
    Messages : 41
    Points : 20
    Points
    20
    Par défaut
    Bonjour,

    je viens de tester votre code mais ça ne marche pas , Merci.

  4. #4
    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 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    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 637
    Points : 66 656
    Points
    66 656
    Billets dans le blog
    1
    Par défaut
    un numéro de téléphone avec 8 espaces

    sinon le i ... des chiffres en majuscule ?

    tu as un exemple des formate que tu veux accepter ?

    0000 0000
    00 00 00 00
    000 000 00
    0 00 00 0 0 0

    ... ???

    Attention aussi à ta syntaxe de déclaration de regex !!!
    String :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    regexp= new RegExp("^([0-9] ?){7}[0-9]$")
    objet regexp :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    regexp=/^([0-9] ?){7}[0-9]$/
    De plus utilise ^debut de reg et $ fin de reg
    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 !

  5. #5
    Membre à l'essai
    Inscrit en
    Février 2014
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Février 2014
    Messages : 41
    Points : 20
    Points
    20
    Par défaut
    Merci pour votre réponse le forma c'est simple je veux que le champ contient en plus des chiffres des espace entre les chiffres par exemple :

    si quelqu'un met 0666798524 ca passe mais 06 667 985 24 ca passe pas ..

  6. #6
    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 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    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 637
    Points : 66 656
    Points
    66 656
    Billets dans le blog
    1
    Par défaut
    et donc la solution proposée ne convient pas ... ma reg valide les deux
    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 !

  7. #7
    Membre à l'essai
    Inscrit en
    Février 2014
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Février 2014
    Messages : 41
    Points : 20
    Points
    20
    Par défaut
    je viens de tester mais quand j'ai mis l'expression que vous m'avez donner le test des champ qui suivent ne fonctionne plus ca passe direct .

  8. #8
    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 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    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 637
    Points : 66 656
    Points
    66 656
    Billets dans le blog
    1
    Par défaut
    utilise .match et pas .test
    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 !

  9. #9
    Membre à l'essai
    Inscrit en
    Février 2014
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Février 2014
    Messages : 41
    Points : 20
    Points
    20
    Par défaut
    je viens de le faire mais maintenant meme quand je met des caractères ca passe

  10. #10
    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 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    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 637
    Points : 66 656
    Points
    66 656
    Billets dans le blog
    1
    Par défaut
    même avec teste ça marche ...
    http://jsfiddle.net/Xg7jp/
    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 !

  11. #11
    Membre à l'essai
    Inscrit en
    Février 2014
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Février 2014
    Messages : 41
    Points : 20
    Points
    20
    Par défaut
    bizarre parce que quand je remplace le code que j'ai et voici le code de la fonction en entier

    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
    60
    61
    function checkFields()
    {
     
    var regex = new RegExp(/^[0-9]{8}/gi);
    if(document.form1.nom.value=='')
    {
    alert("Le nom  ne doit pas etre vide");
    return false;
    }
    else if(document.form1.prenom.value=='')
    {
    alert("le prenom ne doit pas etre vide");
    return false;
    }
     
    else if(document.form1.adresse.value=='')
    {
    alert("l'adresse ne doit pas etre vide!");
    return false;
    }
     
    else if(document.form1.codepostal.value=='')
    {
    alert("le code postal est obligatoire!");
    return false;
    }
     
    else if(document.form1.ville.value=='')
    {
    alert("La Ville est obligatoire!");
    return false;
    }
     
     
     
    else if(document.form1.telfixe.value=='')
    {
    alert("le numéro téléphone est obligatoire!");
    return false;
    }
     
     
    else if(document.form1.telfixe.value != "" && !regex.test(document.form1.telfixe.value))
    	{
    		alert("le numéro téléphone n'est pas valide");
    		return false;
    	}
     
    else if(document.form1.email.value=='')
    {
    alert("Votre E_mail ne doit pas etre vide");
    return false;
    }
     
    else if (((document.form1.email.value!='')&&(document.form1.email.value.search(/^[A-Za-z0-9](([_\.\-]?[a-zA-Z0-9]+)*)@([A-Za-z0-9]+)(([\.\-]?[a-zA-Z0-9]+)*)\.([A-Za-z]{2,})$/)) == -1))
    { 
    alert ('entrez une adresse Email valide'); 
    return false;
    }
     
    }
    je prend
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var regex = new RegExp(/^[0-9]{8}/gi);
    et je remplace par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     var regex = new RegExp(/^([0-9] ?){7}[0-9]$/);
    ca passe pas

  12. #12
    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 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    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 637
    Points : 66 656
    Points
    66 656
    Billets dans le blog
    1
    Par défaut
    Tu n'as rien compris à ce que j'ai expliqué au dessus pour la syntaxe d'une reg

    tu as codé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var regex = new RegExp(/^[0-9]{8}/gi);
    relis donc mon post de 10h33 ...
    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 !

  13. #13
    Membre à l'essai
    Inscrit en
    Février 2014
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Février 2014
    Messages : 41
    Points : 20
    Points
    20
    Par défaut
    j'ai bien compris je l'ai changer au debut comme vous l'avez de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var regex = new RegExp(/^[0-9]{8}/gi);
    et mis en place
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    regexp=/^([0-9] ?){7}[0-9]$/
    le problème c'est que les tests après le test de téléphone même si les champs sont vide le formulaire s'envoie j'ai mis le test pour le téléphone en dernier la c'est bon mais le test n'est pas parfait parce que la quand je met une lettre ça s'envoie aussi alors que normalement juste les chiffres et les espaces sont autorisés ;....

  14. #14
    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 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    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 637
    Points : 66 656
    Points
    66 656
    Billets dans le blog
    1
    Par défaut
    Tu dois te fourvoyer dans ton code ...

    remontre nous ton script ...
    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 !

  15. #15
    Membre à l'essai
    Inscrit en
    Février 2014
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Février 2014
    Messages : 41
    Points : 20
    Points
    20
    Par défaut
    Voici le code de la fonction :

    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
    60
    61
    62
    63
    64
    65
    66
     <script language="JavaScript">
    function checkFields()
    {
     
    regexp=/^([0-9] ?){7}[0-9]$/;
    if(document.form1.nom.value=='')
    {
    alert("Le nom  ne doit pas etre vide");
    return false;
    }
    else if(document.form1.prenom.value=='')
    {
    alert("le prenom ne doit pas etre vide");
    return false;
    }
     
    else if(document.form1.adresse.value=='')
    {
    alert("l'adresse ne doit pas etre vide!");
    return false;
    }
     
    else if(document.form1.codepostal.value=='')
    {
    alert("le code postal est obligatoire!");
    return false;
    }
     
    else if(document.form1.ville.value=='')
    {
    alert("La Ville est obligatoire!");
    return false;
    }
     
     
     
     
     
    else if(document.form1.email.value=='')
    {
    alert("Votre E_mail ne doit pas etre vide");
    return false;
    }
     
    else if (((document.form1.email.value!='')&&(document.form1.email.value.search(/^[A-Za-z0-9](([_\.\-]?[a-zA-Z0-9]+)*)@([A-Za-z0-9]+)(([\.\-]?[a-zA-Z0-9]+)*)\.([A-Za-z]{2,})$/)) == -1))
    { 
    alert ('entrez une adresse Email valide'); 
    return false;
    }
    else if(document.form1.telfixe.value=='')
    {
    alert("le numéro téléphone est obligatoire!");
    return false;
    }
     
     
    else if(document.form1.telfixe.value != "" && !regex.test(document.form1.telfixe.value))
    	{
    		alert("le numéro téléphone n'est pas valide");
    		return false;
    	}
     
    }
     
     
    </script>
    Merci pour votre temps.

  16. #16
    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 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    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 637
    Points : 66 656
    Points
    66 656
    Billets dans le blog
    1
    Par défaut
    Pa besoin de tester si le champs est vide ! c'est déja inclu dans le test de la reg
    jette un oeil sur ce code ...


    http://jsfiddle.net/Xg7jp/1/
    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 !

Discussions similaires

  1. test date formulaire
    Par hartecel dans le forum Langage
    Réponses: 16
    Dernier message: 23/03/2007, 12h45
  2. Test date formulaire
    Par Krakt dans le forum Langage
    Réponses: 10
    Dernier message: 17/05/2006, 19h32
  3. Test sur formulaire avec liste des erreurs
    Par Nicos77 dans le forum Langage
    Réponses: 37
    Dernier message: 17/11/2005, 10h22
  4. test validation formulaire
    Par Nkubi dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 28/06/2005, 11h22
  5. test pré-formulaire
    Par autumn319 dans le forum ASP
    Réponses: 22
    Dernier message: 04/09/2003, 16h10

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