Problème checkbox

Bonjour,
Logiquement avec le code ci-dessous, je devrait voir s'afficher le choix effectué par l'utilisateur, mais rien ne se passe
<? if(!empty($_POST["mon_champ"])) { ?>
Vous avez choisi comme option -
<b>
<?
for ($i = 0; $i < count($_POST["mon_champ"]); $i++)
echo $_POST["mon_champ"][$i]." - ";
?>
</b><br><br>
<? } ?>

<FORM method="POST">
<input type="checkbox" name="mon_champ[]"
value=1>Option 1<br>
<input type="checkbox" name="mon_champ[]"
value=2>Option 2<br>
<input type="checkbox" name="mon_champ[]"
value=3>Option 3<br>
<input type="Submit" value="OK">
</FORM> 

2 réponses

  1. J'ai essayé ton code et il fonctionne très bien chez moi.

    Essaye peut-être avec un foreach plutôt qu'un for, ça m'étonnerait que ça vienne de là, mais bon sait-on jamais .

    Sinon, un peu hors-sujet, lorsque tu fais un parcours de tableau avec for, il est conseillé de faire comme ceci

    $taille = count($mon_tableau);
    
    for($i = 0; $i < $taille; $i++)
    	echo $mon_tableau[$i];
    


    ça évite d'appeler la fonction count à chaque passage dans le for et parfois ça peut permettre de jolis gains de performance ;)
    1. Merci superpigeon pour ton aide

      j'ai tester tout ce que tu ma dit de faire mais ça ne change rien. Je ne comprends pas ça fonctionnait hier ????

    2. @ben85350Peut-être un soucis de navigateur ? enfin je ne sais pas, je ne peux tellement t'aider étant donné que chez moi ça fonctionne.
  2. Je reviens un peu tard.
    Mais sait-on jamais, ça peut peut-être être utile.
    Il vaut mieux utiliser la balise
    <?php
    plutôt que
    <?
    .
    Selon la configuration du serveur, il peut ne pas interpréter du code entouré des balises
    <? ?>
    , alors que
    <?php ?>
    est toujours reconnu.