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

Langage PHP Discussion :

comment rendre une checkbox obligatoire


Sujet :

Langage PHP

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Septembre 2011
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2011
    Messages : 52
    Points : 29
    Points
    29
    Par défaut comment rendre une checkbox obligatoire
    bonjour
    j'aimerais un coup de main sur checkbox obligatoire

    je ne sais pas comment codé
    merci de votre aide voici 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
    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
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    <!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=iso-8859-1" />
    <title>Document sans titre</title>
    <link href="style.css"	title="winibee" rel="stylesheet" type="text/css" media="screen" />
    </head>
     
    <body>
    <div id="connexion"><div class="champ2"></div>
    	  <span class="Style3">Boite à idées </span><div> 
          <div class="champ0">        <?php
     
     
    if (isset($_POST['submit'])) 
    {
     
         //-----------------------------------------------
         //DECLARE LES VARIABLES
         //-----------------------------------------------
     
         $destinataire='winibee@free.fr';
         $email_expediteur='votre_mail@fai.fr';
         $email_reply='email_de_reponse@fai.fr';
     
    	$sujet="Mail du site";
         $message_texte='Bonjour,'."\n\n".'Voici un message au format texte'; 
         $message_html='<html>
         <head>
         <title>Message du site</title>
         </head>
         <body>
    	 <h1> Concerne : '.$_POST['choix'].'</h1>
    	<p> Titre : '.$_POST['titre'].'</p> 
    	<p> Message : '.$_POST['message'].'</p>  
    	 
    	 </body>
         </html>';
     
         //-----------------------------------------------
         //GENERE LA FRONTIERE DU MAIL ENTRE TEXTE ET HTML
         //-----------------------------------------------
     
         $frontiere = '-----=' . md5(uniqid(mt_rand()));
     
         //-----------------------------------------------
         //HEADERS DU MAIL
         //-----------------------------------------------
     
         $headers = 'From: "Nom" <'.$email_expediteur.'>'."\n";
         $headers .= 'Return-Path: <'.$email_reply.'>'."\n";
         $headers .= 'MIME-Version: 1.0'."\n";
         $headers .= 'Content-Type: multipart/alternative; boundary="'.$frontiere.'"';
     
         //-----------------------------------------------
         //MESSAGE TEXTE
         //-----------------------------------------------
         $message = 'This is a multi-part message in MIME format.'."\n\n";
     
         $message .= '--'.$frontiere."\n";
         $message .= 'Content-Type: text/plain; charset="utf-8"'."\n";
         $message .= 'Content-Transfer-Encoding: 8bit'."\n\n";
         $message .= $message_texte."\n\n";
     
         //-----------------------------------------------
         //MESSAGE HTML
         //-----------------------------------------------
         $message .= '--'.$frontiere."\n";
         $message .= 'Content-Type: text/html; charset="utf-8"'."\n";
         $message .= 'Content-Transfer-Encoding: 8bit'."\n\n";
         $message .= $message_html."\n\n";
     
         $message .= '--'.$frontiere."\n";
     
         if(mail($destinataire,$sujet,$message,$headers))
         {
              echo '<div align="center" class="Style3">Le mail a été envoyé </div>';
         }
         else
         {
              echo '<div align="center" class="Style3">Le mail n\'a pu être envoyé </div>';
         }
     
     
    }
    else
    {
    ?>
     
            <p align="left"> Si tu souhaites partager une idée afin de faire évoluer Winibee,
              Choisis une rubrique.<br />
            Si tu souhaites juste nous contacter , utilise ce lien: <a href="contatct.php">Nous contacter</a></p>
            </div>
     
                 <div class="champb"> </td>
      </tr>
    </table>
     
        <form method="post" action="" >
     
     
        <table width="400" border="0">
          <tr>
     
            <td width="120"><label for="Profil">
            <div align="left"><span class="Style1">Profil</span></div>
            </label></td>
            <td width="78"> <input type="checkbox"  name="choix" value="Profil" /></td>
     
     
    	    <td width="144"><label for="gestion du compte" class="Style1">
    	    <div align="left">Gestion du compte</div>
    	    </label></td> <td width="40"><input type="checkbox"  name="choix"  value="Gestion du compte" /></td>
     
          </tr>
          <tr>
            <td> <label for="Swarm" class="Style1">
            <div align="left">Swarm</div>
            </label></td><td><input type="checkbox" name="choix" value="Swarm"/></td>
     
     
            <td><label for="Sécurité" class="Style1">
            <div align="left">Sécurité</div>
            </label></td><td> <input type="checkbox"   name="choix" value="Sécurité" /></td>
          </tr>
          <tr>
     
            <td><label for="Jeux" class="Style1">
            <div align="left">Jeux</div>
            </label></td> <td><input type="checkbox"  name="choix" value="Jeux" /></td>
            <td> <label for="Capacité ou privilège" class="Style1">
     
            <div align="left">Capacité ou privilège</div>
            </label></td><td><input type="checkbox"  name="choix" value="Capacité ou privilège" /></td>
          </tr>
        </table>
    	  <div class="champ"></div>
               <div>  
                 <div class="champb1"><input name="titre" size= 30 type="text" value="Titre" onfocus="this.value='';" /></div>
                 <div class="champ1"><textarea name="message" rows="8" cols="45" onfocus="this.value='';" >Ton message ne doit pas dépasser 1000 caractères...</textarea></div>
     
                     <div id="ok">
          <input type='submit' name='submit' value='' class="bouton" style="vertical-align:center;margin: 0px 0 0 0;"><br />
           </div>
                 <div class="clear"></div>
               </div>  
      </form>
     
      <?php
     
     
    }
     
    ?> </div>
     
      </div>
    </div>
    </body>
    </html>

  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
    if (!isset($_POST['nomdetacheckbox'])) {
       // ce que tu veux faire.
    }
    Attention, dans ton code actuel tu as plusieurs checkbox avec le même "name".

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Septembre 2011
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2011
    Messages : 52
    Points : 29
    Points
    29
    Par défaut
    se que j aimerais c'est un message: "cochez une case "
    et si une case n'est pas cocher le message ne peux pas partir

  4. #4
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Tu met le test suggéré par sabotage juste au début de ton if (isset($_POST['submit'])) et tu met ton code actuel dans le else de ce test

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Septembre 2011
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2011
    Messages : 52
    Points : 29
    Points
    29
    Par défaut
    je croie que je l'ai pas dit mais je suis vraiment une pipe en code je doit mettre quoi avent if (isset($_POST['submit']))

  6. #6
    Expert éminent
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Points : 7 762
    Points
    7 762
    Par défaut
    Avec HTML 5, on peut rendre les élément de formulaire obligatoires en leur ajoutant l'attribut required.

    Exemple:

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <form action="submit.php">
      <label><input type="checkbox" name="valid" required> J'accepte les conditions générales de vente</label>
      <input type="submit" value="Envoyer">
    </form>

  7. #7
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Septembre 2011
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2011
    Messages : 52
    Points : 29
    Points
    29
    Par défaut
    c est exactement se que je recherche mais moi c est un formulaire je voudrais que l utilisateur clique sur au moins une checkbox et quand je code pour tout il demande pour tout lol comment puis je fait ?

    Exemple:

    Code html : 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
     
     <form method="post" action="">
     
     
        <table width="400" border="0">
          <tr>
     
            <td width="120"><label for="Profil">
            <div align="left"><span class="Style1">Membre Winibee</span></div>
            </label></td>
            <td width="85"> <input type="checkbox" name="choix" required value="Membre Winibee" /></td>
     
     
    	    <td width="137"><label for="gestion du compte" class="Style1">
    	    <div align="left">Investisseur</div>
    	    </label></td> <td width="40"><input type="checkbox" name="choix" required value="Investisseur" /></td>
     
          </tr>
          <tr>
            <td> <label for="Swarm" class="Style1">
            <div align="left">Editeur de jeux</div>
            </label></td><td><input type="checkbox" name="choix"required value="Editeur de jeux"/></td>
     
     
            <td><label for="Sécurité" class="Style1">
            <div align="left">Bénévole</div>
            </label></td><td> <input type="checkbox" name="choix"required value="Bénévole" /></td>
          </tr>
          <tr>
     
            <td><label for="Jeux" class="Style1">
            <div align="left">Publicitaire</div>
            </label></td> <td><input type="checkbox" name="choix"required value="Publicitaire" /></td>
            <td> <label for="Capacité ou privilège" class="Style1">
     
            <div align="left">Autre</div>
            </label></td><td><input type="checkbox" name="choix"required value="Autre" /></td>
          </tr>
        </table>
    	  <div class="champ"></div>
               <div>  
                 <div class="champ"><input name="titre" size= 30 type="text" value="Titre" onfocus="this.value='';" /></div>
                 <div class="champ1"><textarea name="message" rows="8" cols="45" onfocus="this.value='';" >Ton message ne doit pas dépasser 1000 caractères...</textarea></div>
     
                     <div id="ok">
          <input type='submit' name='submit' value='' class="bouton" style="vertical-align:center;margin: 0px 0 0 0;"><br />
           </div>
                 <div class="clear"></div>
               </div>  
      </form>

  8. #8
    Expert éminent
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Points : 7 762
    Points
    7 762
    Par défaut
    Citation Envoyé par fenixdragon Voir le message
    c est exactement se que je recherche mais moi c est un formulaire je voudrais que l utilisateur clique sur au moins une checkbox et quand je code pour tout il demande pour tout lol comment puis je fait ?
    Je comprends pas le sens de ta phrase; ça donne presque une incantation mystique ! Vu que j'ai pas fait l'option égyptologie lors de mes études, je peux pas décrypter ton message donc on a 2 choix:
    1. tu m'explique clairement ce que tu veux faire
    2. je vais voir ailleurs si j'y suis

  9. #9
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    ~~ Celira active "Pierre de Rosette" ~~
    Je pense qu'il veut qu'au moins une checkbox soit cochée, mais qu'il est possible d'en cocher plusieurs.

    Tu as pensé à un tableau de checkbox ?

  10. #10
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Septembre 2011
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2011
    Messages : 52
    Points : 29
    Points
    29
    Par défaut
    heu oui mdr je me suis trop mal exprimé ça pique les yeux

    oui je veux qu il y est un seul choix possible .

    mais j'ai 6 proposition .

  11. #11
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Un seul possible à la fois ? Ou au moins un ?

  12. #12
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Septembre 2011
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2011
    Messages : 52
    Points : 29
    Points
    29
    Par défaut
    un seul à la fois ^^

  13. #13
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Alors utilise des boutons radio, c'est fait exactement pour ça

  14. #14
    Expert éminent
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Points : 7 762
    Points
    7 762
    Par défaut
    Exemple:

    Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <label for="input1"><input type="radio" name="choix" value="a" id="input1"> Choix A</label>
    <label for="input2"><input type="radio" name="choix" value="b" id="input2"> Choix B</label>
    <label for="input3"><input type="radio" name="choix" value="c" id="input3"> Choix C</label>

  15. #15
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Septembre 2011
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2011
    Messages : 52
    Points : 29
    Points
    29
    Par défaut
    oui je sais que le radio le fait ^^ mais je doit avoir le design checkbox

  16. #16
    Expert éminent
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Points : 7 762
    Points
    7 762
    Par défaut
    T'as qu'a le styler avec du CSS et hop.

  17. #17
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Septembre 2011
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2011
    Messages : 52
    Points : 29
    Points
    29
    Par défaut
    merci ^^
    c'est parfait mais j'ai plus le message qui dit qu'il faut cliqué sur au moins un choix :

    voici mon code :

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <label for="input3"> Swarm</label>
    <input type="radio" name="choix"required value="Swarm" id="input3">

Discussions similaires

  1. Comment rendre une checkbox inactive ?
    Par damien99 dans le forum MFC
    Réponses: 2
    Dernier message: 08/02/2006, 21h42
  2. Comment rendre une ligne de tableau en liens
    Par Death83 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 10
    Dernier message: 11/09/2005, 23h14
  3. Comment rendre une form transparente à certains endroits ?
    Par ludo5532 dans le forum Composants VCL
    Réponses: 4
    Dernier message: 21/08/2005, 15h28
  4. [ADO.NET] Comment rendre une certaine colonne "AutoIncrement" ?
    Par maitrebn dans le forum Accès aux données
    Réponses: 3
    Dernier message: 23/03/2005, 22h12

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