Selection checkbox dans un tableau
Résolu
mali_67
Messages postés
77
Date d'inscription
Statut
Membre
Dernière intervention
-
mali_67 Messages postés 77 Date d'inscription Statut Membre Dernière intervention -
mali_67 Messages postés 77 Date d'inscription Statut Membre Dernière intervention -
Bonjour, j'ai créer un formulaire composer d'un tableau, un bouton, et une checkbox sur chaque ligne du tableau.
Mon probleme et le suivant, si je selectionne une checkbox et que j'appui sur valider tout fonctionne comme prevu, mais si je selectionne plusieur checkbox mon affichage fonctionne mal(il affiche mes resultat par rapport au nombre de box cocher ex si je cocher 3 box il affiche 3 fois le resultat)
si vous voulez plus de renseignement sur mon code, demander moi
$Tab['NumLien'] = le numero id de la colonne
$Tab['LibelleLienSprice'] = une colonne de mon tableau(celle qui s'affiche plusieur fois si plusieur checkbox sont cocher
Mon probleme et le suivant, si je selectionne une checkbox et que j'appui sur valider tout fonctionne comme prevu, mais si je selectionne plusieur checkbox mon affichage fonctionne mal(il affiche mes resultat par rapport au nombre de box cocher ex si je cocher 3 box il affiche 3 fois le resultat)
si vous voulez plus de renseignement sur mon code, demander moi
$Tab['NumLien'] = le numero id de la colonne
$Tab['LibelleLienSprice'] = une colonne de mon tableau(celle qui s'affiche plusieur fois si plusieur checkbox sont cocher
<?php if (isset($_POST['Verification'])) //mon bouton verification { $verif = $_POST['Verif']; //mes checkbox for($i=0;$i<sizeof($verif);$i++) { if ($verif[$i]==$Tab['NumLien']) { $Test = $Tab['LibelleLienSprice']; if (!$fp = @fopen(''.$Test.'',"r")) //l { echo '<span style="color:red;">'.$Test.'</span>'; $bool='false'; } else { echo '<span style="color:green;">'.$Test.'</span>'; $bool='true'; } } else { echo $Tab['LibelleLienSprice']; } } } else { echo $Tab['LibelleLienSprice']; } ?>
A voir également:
- Selection checkbox dans un tableau
- Tableau word - Guide
- Trier un tableau excel - Guide
- Tableau ascii - Guide
- Imprimer un tableau excel - Guide
- Tableau croisé dynamique - Guide
5 réponses
C'est normal. Le problème vient de là :
Le nombre d'itérations de ta boucle correspond au nombre de cases cochées (puisque tu utilises sizeof). A chaque itération, soit la condition est remplie (if ($verif[$i]==$Tab['NumLien'])) et tu affiches alors $Tab['LibelleLienSprice'] en vert ou rouge (la condition imbriquée), soit elle n'est pas remplie mais tu l'affiches là aussi, en noir cette fois (ou la couleur par défaut de ton site).
Résultat, ta variable est affichée à chaque fois d'une couleur ou d'une autre.
Plutôt qu'une boucle, utilise la fonction in_array.
if ($verif[$i]==$Tab['NumLien']) { ... } else { echo $Tab['LibelleLienSprice']; }
Le nombre d'itérations de ta boucle correspond au nombre de cases cochées (puisque tu utilises sizeof). A chaque itération, soit la condition est remplie (if ($verif[$i]==$Tab['NumLien'])) et tu affiches alors $Tab['LibelleLienSprice'] en vert ou rouge (la condition imbriquée), soit elle n'est pas remplie mais tu l'affiches là aussi, en noir cette fois (ou la couleur par défaut de ton site).
Résultat, ta variable est affichée à chaque fois d'une couleur ou d'une autre.
Plutôt qu'une boucle, utilise la fonction in_array.
<?php if (in_array($Tab['NumLien']), $_POST['Verif']) { $Test = $Tab['LibelleLienSprice']; if (!$fp = @fopen(''.$Test.'',"r")) { echo '<span style="color:red;">'.$Test.'</span>'; $bool='false'; } else { echo '<span style="color:green;">'.$Test.'</span>'; $bool='true'; } } else { echo $Tab['LibelleLienSprice']; } ?>
Merci enax par contre
j'ai un message d'erreur le voici
Parse error: syntax error, unexpected ',' in C:\wamp\www\Referencement\Accueil.php on line 280
j'ai un message d'erreur le voici
Parse error: syntax error, unexpected ',' in C:\wamp\www\Referencement\Accueil.php on line 280
<?php if (isset($_POST['Verification']) && $_POST['Verif']!= "") { if (in_array($Tab['NumLien']), $_POST['Verif']) //ligne 280 { $Test = $Tab['LibelleLienSprice']; if (!$fp = @fopen(''.$Test.'',"r")) //l { echo '<span style="color:red;">'.$Test.'</span>'; $bool='false'; } else { echo '<span style="color:green;">'.$Test.'</span>'; $bool='true'; } } } else { echo $Tab['LibelleLienSprice']; $message="Vous devez cocher une case!"; } ?>
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question