Bonjour.
Nouveau sur le forum car nouveau en PHP.
Mon problème est dans le titre.
Voici le contexte:
Je cherche à créer un catalogue de matériel en ligne avec bdd mysql.
Dans le menu de mon catalogue le visiteur choisit dans une liste déroulante une catégorie, puis une sous-categorie dans une seconde liste.
Cette sous-catégorie définit des groupes de cases à cocher qui correspondent à des filtres.
Ex: Pour la sous-catégorie "PC" on a un groupe de cases dont le nom est "Processeur" avec des cases qui s'appellent "Core i5", "Atom", etc..., un autre groupe appelé "Mémoire" avec les cases "4Go", "8Go", etc...
Comme les noms de mes cases à cocher sont issus de ma base j'applique un while et un fetch pour les récupérer:
à chaque boucle PHP génère un champ input de type checkbox dont le name et l'id sont du coup une variable issue de mon while.
Problème: je veux récupérer les valeurs des cases cochées dans un $_POST pour executer une autre requête SQL, mais quand je sors de ma boucle, ma variable ($conf['id']) reste bloquée sur la dernière valeur parcourue.
Rien de plus normal me direz-vous! Mais comment puis-je faire pour sortir ces variables de ma boucle???
Je précise que je débute en php et que je n'ai pas de formation de développeur!
Si quelqu'un a une piste je suis preneur!
Voici mon code:
Je précise que la variable $crit['critere'] est issue d'une précédente boucle while dans laquelle celle-ci est imbriquée.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 <?php $config = $bdd->query("SELECT configurations.id, configuration, id_critere, id_modele FROM configurations JOIN criteres ON configurations.id_critere = criteres.id WHERE criteres.critere='".$crit['critere']."' GROUP BY configuration"); while ($conf = $config->fetch()){ ?> <input type="checkbox" name="<?php echo $conf['id']; ?>" id="<?php echo $conf['id']; ?>" /><label for="<?php echo $conf['id']; ?>"><?php echo $conf['configuration']; ?></label> <?php } $config->closeCursor(); ?>
Partager