function recupereCategorie() { $categories = Categorie::fetchAll(); //Change l'ordre selon la fonction de comparaison cmp. usort($categories, "cmp"); return $categories; }
<div class="col-md-4" id="nomLogiKek"> <!-- Nom de la compagnie --> <a href="./index.php"><h1>LogiKek</h1></a> </div> <!-- Fin du nom de la compagnie --> <div class="col-md-4"> <!-- Début de la section du form de recherche --> <?php if ($estIndex) { //Cache le form de recherche si nous sommes pas à l'index ?> <form action='./' method='GET'> <div class="input-group" id="groupeRecherche"> <input type="text" required name="recherche" class="form-control" placeholder="Rechercher..."> <div class="input-group-btn"> <select class="btn dropdown-toggle" name="listeCategorie"> <!-- Dropdown contenant toutes les catégories --> <option value="0" selected>Tout les produits</option> <?php foreach (Categorie::fetchAll() as $value) { //Récupère toutes les catégories en BD et crée les éléments option html ?> <option value="<?php echo $value->getCodeCategorie(); ?> "><?php echo $value->getNom(); ?> </option> <?php } ?> </select> <!-- Fin du dropdown --> </div> <span class="input-group-btn">
function genereCheckBoxCategorie($produit = null) { //Récupère un tableau d'objet Catégories de toutes les Catégories en BD. $categories = Categorie::fetchAll(); //Si un produit est passé en paramètre. if (isset($produit)) { //Lorsqu'on récupère un produit en BD, les catégories sont présentes dans une colonne et sont séparé par une virgule. //Explode le champ categories pour avoir un tableau de toutes les catégories du produit (sans les virgules). $tabCategorieSelected = explode(",", $produit['categories']); } //Pour chaque Catégories en BD. foreach ($categories as $key => $value) { //À chaque 5 catégories, change de ligne. if ($key % 5 == 0) { echo "<br>"; } //Input de type checkbox. Value est le nom de la catégorie, car nos requête utilise le nom plutôt que l'id. //Noté '[]' pour le nom. De cette manière le POST sera un tableau de toute les sélections. echo "<input type='checkbox' name='categories[]' value='" . $value->getNom() . "'"; //Si produit est set et que la catégorie actuel est contenu dans les catégorie du produit. if (isset($produit) && in_array($value->getNom(), $tabCategorieSelected)) { //On la sélectionne. echo " checked"; } echo ">" . $value->getNom(); } }