Case à cocher en html et php

J'ai un problème en HTML et PHP
Dans un premier document, j'ai une case à cocher dans un formulaire.
Dans un 2° document en PHP j'ai le message d'erreur "Undefined index" si la case n'est pas cochée, si elle est cochée, tout va bien.
Pourriez-vous m'aider ?
Merci d'avance.

6 réponses

  1. Essaie plutot :
    elseif (isset($_POST["menu"])&&$_POST["menu"]=="pâtes") 
    echo "pâtes"; 

    Pour chaque resultat.
    Tu verras, ca ira beaucoup mieux ;)
    1. En général ça c'est parce que le nom récupéré en php du formulaire n'est pas le bon :

      ex : <input type='checkbox' name='toto' ...
      php : case = $_POST["toto"];

      sinon je vois pas comme ça sans source.
      1. Voici le contenu du 1° document
        <form action="doc2.php" method="post">
        <input type="checkbox" name="menu" value="riz" checked="checked">Riz<br>
        <input type="checkbox" name="menu" value="pâtes">pâtes<br>
        <input type="checkbox" name="menu" value="champignons">champignons<br>
        <input type="submit" value="Envoyer">
        <input type="reset" value="Annuler">
        </form>
        Voici le contenu du 2° document :
        <?
        if ($_POST["menu"]=="riz")
        echo "riz";
        elseif ($_POST["menu"]=="pâtes")
        echo "pâtes";
        elseif ($_POST["champignons"]=="champignons")
        echo "champignons";
        else
        echo "aucun";
        ?>
        1. Merci à vous tous qui avez contribué à résoudre mon problème.
          Voila la solution finale :
          Ci-dessous le contenu de fic1.html :
          <form action="fic2.php" method="post">
          <input type="checkbox" name="menu[0]" value="riz">Riz<br>
          <input type="checkbox" name="menu[1]" value="brocolis">Brocolis<br>
          <input type="checkbox" name="menu[2]" value="pomme">Pomme<br>
          <input type="submit" value="Envoyer">
          <input type="reset" value="Annuler">
          </form>
          Ci-dessous le contenu de fic2.php :
          <?
          @$menu=$_POST['menu'];
          echo "Affichage du 1°<br>";
          if (isset($menu[0]) && ($menu[0]=='riz'))
          { echo "Oui, c'est du riz <BR>";}
          echo "On passe au 2°<br>";
          if (isset($menu[1]) && ($menu[1]=='brocolis'))
          { echo "Ce sont des brocolis<BR>";}
          echo "Et enfin au 3°<br>";
          if (isset($menu[2]) && ($menu[2]=='pomme'))
          { echo "Ah, c'est une pomme<BR>";}
          echo "recherche si rien n'a été coché<br>";
          $aucun=0;
          for ($i=0; $i <=2;$i++)
          if (isset($menu[$i])==true)
          $aucun=1;
          if ($aucun==0)
          echo "Effectivement, rien n'a été coché ! <BR>";
          ?>
          1. Il serait peut etre judicieux de modifier le statut du sujet...