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

jQuery Discussion :

Vérification des cases d'un formulaire


Sujet :

jQuery

  1. #1
    Membre averti
    Inscrit en
    Janvier 2008
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 18
    Par défaut Vérification des cases d'un formulaire
    Bonjour à tous !
    J'ai développé ce petit formulaire mais j'aimerais y ajouter du javascript sur les cases,

    http://paradogz.free.fr/test/test.html



    De telles sortes que toutes les cases, sauf commentaires, soient obligatoires et qu'une petite croix verte apparaisse.

    j'ai une question sur ma vérification en php pourrais-je s'il vous plait la soumettre ? J'aimerais qu'une fois que mon script php a vérifié le formulaire HTML, le script me re-remplisse les cases correctes (a l'heure actuelle, il me vide tout)

    Merci de trouver ci-joint mes scripts dans l'archive ici
    http://paradogz.free.fr/test/armand1.rar

    Merci pour votre aide à tous,

    Cordialement,

    Armand

  2. #2
    Rédacteur

    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    494
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2007
    Messages : 494
    Par défaut
    Salut,

    alors pour le PHP tu as plein de moyens différents :

    tu peux par exemple mettre à 1 une variable pour voir si des erreurs existent. par exemple :

    ainsi dans ton HTML, pour chaque champ tu peux faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <input type="text" name="champ" value="<?php if(!empty($error)) { echo $_POST['champ'];} ?>" />
    c'est une solution parmi tant d'autres...

    Pour les flêches vertes, regarde dans les plugins de validations de formulaires tu vas trouver ton bonheur

  3. #3
    Membre averti
    Inscrit en
    Janvier 2008
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 18
    Par défaut
    Bonjour et merci pour ta réponse

    Excuse moi mais je n'ai pas compris à quoi servait ce script, j'ai déjà codé un message qui me permet de savoir si le formulaire est bien rempli, mais lors du renvoi sur le formulaire, tous les champs sont vidés.

    Excellent Weekend à tous !

    Armand

  4. #4
    Rédacteur

    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    494
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2007
    Messages : 494
    Par défaut
    Salut,

    ce script permet de remettre la valeur saisie d'un champ en cas d'erreur, exactement ce que tu cherches à faire

  5. #5
    Membre averti
    Inscrit en
    Janvier 2008
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 18
    Par défaut
    Quand je rentre le code
    ça me met d'office

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php if(!empty($error)) { echo $_POST['champ'];} ?>
    à l'intérieur du champ HTML, tu as une idée pour m'aider ?

  6. #6
    Rédacteur

    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    494
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2007
    Messages : 494
    Par défaut
    Ton formulaire est bien dans une page .php ?

  7. #7
    Membre averti
    Inscrit en
    Janvier 2008
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 18
    Par défaut
    Ah non HTML justement

    http://paradogz.free.fr/test/test.html

    Comment ça va se passer alors ? Je dois revoir tout mon code ?

  8. #8
    Rédacteur

    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    494
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2007
    Messages : 494
    Par défaut
    renomme la juste en .php pour voir déjà

  9. #9
    Membre averti
    Inscrit en
    Janvier 2008
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 18
    Par défaut
    AH effectivement, ça a fait disparaitre le champ pré remplie, cependant, pour l'instant, après l'erreur de champ vide, le champ ne se remplie pas, j'ai râté quelque chose dans l'un de mes codes ? J'avoue être bloqué, merci de m'aider

    Armand

    http://paradogz.free.fr/test/test.php

    les 2 codes : http://paradogz.free.fr/test/armand.rar

    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
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
        <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
        <html xmlns="http://www.w3.org/1999/xhtml">
        <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Demande de contre code</title>
        <style type="text/css">
        body { background: #222; font-family: "Lucida Grande", Tahoma, Arial, Verdana, sans-serif; font-size: small; margin: 14px 0; }
        #form_container { background: #fff; width: 640px; margin: 0 auto; border: 8px solid #444; border-radius: 20px; box-shadow: 3px 3px 5px #000000; }
        #form_container form { margin: 20px 20px 0; padding: 0 0 20px; }
        h2 { background-color: #444; color: #BEBEBE; margin: 0; padding: 0 0 8px; min-height: 0; text-align: center; }
        #form_container li { width:61%; }
        form ul { list-style-type:none; margin:0; padding:0; width:100%; }
        form li { display:block; margin:0; padding:4px 5px 2px 9px; position:relative; }
        .buttons { clear: both; display: block; margin-top: 10px; }
        * html form li { height:1%; }
        * html .buttons { height:1%; }
        * html form li div { display: inline-block; }
        form li span { color: #444; margin: 0 4px 0 0; padding: 0 0 8px; }
        input.button_text { overflow: visible; padding: 0 7px; width: auto; }
        .buttons input { margin-right: 5px; }
        label.description { border: none; color: #222; display: block; font-size: 95%; font-weight: 700; line-height: 150%; padding: 0 0 1px; }
        input.text { background: #fff; border-bottom: 1px solid #ddd; border-left: 1px solid #c3c3c3; border-right: 1px solid #c3c3c3; border-top: 1px solid #7c7c7c; color: #333; font-size: 100%; margin: 0; padding: 2px 0; }
        textarea.textarea { border-bottom: 1px solid #ddd; border-left: 1px solid #c3c3c3; border-right: 1px solid #c3c3c3; border-top: 1px solid #7c7c7c; color: #333; margin: 0; width: 99%; }
        input.radio { height: 15px; line-height: 1.4em; margin: 8px 0 0 3px; width: 15px; }
        label.choice { color: #444; display: block; font-size: 100%; line-height: 1.5em; margin: -1.8em 0 0 25px; padding: 3px 0 8px; width: 90%; }
        input { width: 60%; }
        textarea { height:10em; }
        </style>
        </head>
        <body>   
        <div id="form_container">   
           <h2>Demande de contre code</h2>
           <form method="post" action="formmail.php">               
              <ul >         
                 <li>
                    <label class="description">Logiciel concern&eacute;</label>
                    <span>
                    <input name="logiciel" id="sda" class="radio" type="radio" value="sda" />
                    <label class="choice" for="sda">Carte SD pour AXONE 2000</label>
                    <input name="logiciel" id="id4l" class="radio" type="radio" value="id4l" />
                    <label class="choice" for="id4l">IDC4 Light</label>
                    <input name="logiciel" id="id4p" class="radio" type="radio" value="id4p" />
                    <label class="choice" for="id4p">IDC4 PLUS</label>
                    <input name="logiciel" id="sdp" class="radio" type="radio" value="sdp" />
                    <label class="choice" for="sdp">Carte SD (IDC4 Pocket)</label>
                    <input name="logiciel" id="sck" class="radio" type="radio" value="sck" />
                    <label class="choice" for="sck">Station de recharge clim Konfort</label>
                    </span>
                 </li>
     
                 <li>
                    <label class="description">Raison Sociale:</label>
                    <span><input type="text" name="raisonsociale" value="<?php if(!empty($error)) { echo $_POST['raisonsociale'];} ?>" /></span>
                 </li>
                 <li>
                    <label class="description">T&eacute;l&eacute;phone:</label>
                    <span><input name="tel" class="text" type="text" maxlength="255" value=""/></span>
                 </li>
                 <li>
                    <label class="description">Votre Email:</label>
                    <span><input name="email" class="text" type="text" maxlength="255" value=""/></span>
                 </li>
                 <li>
                    <label class="description">Nom du demandeur:</label>
                    <span><input name="nom" class="text" type="text" maxlength="255" value=""/></span>
                 </li>
                 <li>
                    <label class="description">N° de VCI:</label>
                    <span><input name="vci" class="text" type="text" maxlength="255" value=""/></span>
                 </li>
                 <li>
                    <label class="description">Code d'activation:</label>
                    <span><input name="codeactivation" class="text" type="text" maxlength="21" value=""/></span>
                 </li>
                 <li>
                    <label class="description">Commentaires:</label>
                    <span><textarea name="comments" class="textarea"></textarea></span>
                 </li>
     
                 <li class="buttons">
                    <input type="submit" class="button_text" name="envoyer" value="Envoyer" />
                    <input type="reset" class="button_text" name="annuler" value="Annuler">
                 </li>
              </ul>
           </form>   
        </div>
        </body>
        </html>


    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
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
     
    <?php
    $TO = "a.michelon@dafconseil.com";
     
    $h  = "From: " . $TO;
     
    $message = "";
     
    $erreurs_count = array();
     
    foreach ($_POST as $key => $val) {
     
    	if ($val == "")
    	{
    		if ($key == "logiciel")
    		{
    		 $erreurs_count[] = "Vous devez sp&eacutecifier le logiciel concern&eacute ! <br />";
    		}
     
    		if ($key == "raisonsociale")
    		{
    		 $erreurs_count[] = "Vous devez indiquer la raison sociale ! <br />";
    		 $error = 1;		
    		}
     
    		if ($key == "tel")
    		{
    		 $erreurs_count[] = "Vous devez indiquer un num&eacutero de t&eacutel&eacutephone ! <br />";
    		}
     
    		if ($key == "email")
    		{
    		 $erreurs_count[] = "Vous devez indiquer une adresse email ! <br />";
    		}
     
    		if ($key == "nom")
    		{
    		 $erreurs_count[] = "Vous devez indiquer un nom ! <br />";
    		}
     
    		if ($key == "vci")
    		{
    		 $erreurs_count[] = "Vous devez indiquer un num&eacutero de VCI ! <br />";
    		}
     
    		if ($key == "codeactivation")
    		{
    		 $erreurs_count[] = "Vous devez indiquer un code d'activation ! <br />";
    		}
     
    		if ($key == "comments")
    		{
    		 $erreurs_count[] = "Vous devez nous faire parvenir quelques commentaires ! <br />";
    		}
     
    	}
     
      $message .= "$key : $val\n";
    }
     
    if (count($erreurs_count) == 0)
    {
    mail($TO, $subject, $message, $h);
    $title = "Merci, votre formulaire a bien &eacutet&eacute transmis.";
    $text = "Vous recevrez une r&eacuteponse sous peu à l'adresse email que vous avez indiqu&eacutee.";
    }
     
    else
    {
    $title = "Erreur: vous avez mal rempli le formulaire.";
    $text = "Vous avez omis de remplir un ou plusieurs champs: <br />";
     
    	foreach ($erreurs_count as $key => $val)
    	{
    	 $text .= $val;
    	}
     
    $text .= '<a href="test.php">Cliquez ici pour retourner sur la page du formulaire.</a>';
    }
    ?>
     
     
        <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
        <html xmlns="http://www.w3.org/1999/xhtml">
        <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Demande de contre code</title>
        <style type="text/css">
        body { background: #222; font-family: "Lucida Grande", Tahoma, Arial, Verdana, sans-serif; font-size: small; margin: 14px 0; }
        #form_container { background: #fff; width: 640px; margin: 0 auto; border: 8px solid #444; border-radius: 20px; box-shadow: 3px 3px 5px #000000; }
        #form_container form { margin: 20px 20px 0; padding: 0 0 20px; }
        h2 { background-color: #444; color: #BEBEBE; margin: 0; padding: 0 0 8px; min-height: 0; text-align: center; }
        #form_container li { width:61%; }
        form ul { list-style-type:none; margin:0; padding:0; width:100%; }
        form li { display:block; margin:0; padding:4px 5px 2px 9px; position:relative; }
        .buttons { clear: both; display: block; margin-top: 10px; }
        * html form li { height:1%; }
        * html .buttons { height:1%; }
        * html form li div { display: inline-block; }
        form li span { color: #444; margin: 0 4px 0 0; padding: 0 0 8px; }
        input.button_text { overflow: visible; padding: 0 7px; width: auto; }
        .buttons input { margin-right: 5px; }
        label.description { border: none; color: #222; display: block; font-size: 95%; font-weight: 700; line-height: 150%; padding: 0 0 1px; }
        input.text { background: #fff; border-bottom: 1px solid #ddd; border-left: 1px solid #c3c3c3; border-right: 1px solid #c3c3c3; border-top: 1px solid #7c7c7c; color: #333; font-size: 100%; margin: 0; padding: 2px 0; }
        textarea.textarea { border-bottom: 1px solid #ddd; border-left: 1px solid #c3c3c3; border-right: 1px solid #c3c3c3; border-top: 1px solid #7c7c7c; color: #333; margin: 0; width: 99%; }
        input.radio { height: 15px; line-height: 1.4em; margin: 8px 0 0 3px; width: 15px; }
        label.choice { color: #444; display: block; font-size: 100%; line-height: 1.5em; margin: -1.8em 0 0 25px; padding: 3px 0 8px; width: 90%; }
        input { width: 60%; }
        textarea { height:10em; }
        </style>
        </head>
        <body>   
        <div id="form_container">   
           <h2><?php echo $title; ?></h2>        
     
                    <label class="description"><?php echo $text; ?></label>
     
        </div>
        </body>
        </html>

  10. #10
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 57
    Par défaut
    je te conseille vivement de faire tes vérifs avant l'envoie du formulaire en javascript (sur la page test.php) directement car cela évitera de faire des aller-retour inutiles entres les 2 pages et donc rajouter de la charge à ton serveur web (même si le traitement que tu fait n'est pas si énorme).

  11. #11
    Membre averti
    Inscrit en
    Janvier 2008
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 18
    Par défaut
    Merci pour ta réponse,

    Comment intégrer du Jquery sur mes champs ?

  12. #12
    Rédacteur

    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    494
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2007
    Messages : 494
    Par défaut
    Salut,

    le problème est que tu fais ta vérification de données sur une autre page que celle du formulaire. Donc obligatoirement, ta variable $error est vide, ainsi que ton tableau $_POST.

    Le concept est donc de faire la vérification de ton formulaire sur la même page que celui-ci. Si des erreurs existent, tu le ré-affiches, sinon tu affiches la confirmation d'envoi de mail

  13. #13
    Membre averti
    Inscrit en
    Janvier 2008
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 18
    Par défaut
    Je peux copier le fichier 2 à la suite du fichier un où il va falloir des ajustements ?

Discussions similaires

  1. Vérification des champs d'un formulaire
    Par lunea dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 23/06/2007, 23h52
  2. Réponses: 14
    Dernier message: 20/05/2007, 16h44
  3. vérification des champs d'un formulaire avant envoi
    Par fey dans le forum Général JavaScript
    Réponses: 28
    Dernier message: 18/05/2007, 17h34
  4. pbm vérification des champs d'un formulaire
    Par mariafan dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 28/12/2006, 13h35

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