$product = ''; $stmt = $verbinding->query("SELECT product_category, product_id, parent FROM Productcategory ORDER BY product_category"); $categorien = $stmt->fetchAll(); foreach($categorien as $cats){ if($cats['parent'] === $producten){ echo '<form action="product-list.php" method="post"> <input type="submit" name="cats" value="'. $cats['product_category'] .'"></form>'; echo $producten; //var_dump($_POST); if(isset($_POST['cats'])){ echo $_POST['cats']; echo $cats['product_category']; echo $cats['product_id']; if($_POST['cats'] === $cats['product_category']){ $product = $cats['product_id']; echo $product; echo "gelukt!!"; } } } }
Donc, pour mettre à jour ma question, ce code fonctionne partiellement mais pas avec l'instruction if($_POST['cats'] === $cats['product_id']){. Le problème est que mon $_POST['cats'] n'envoie aucune information. Je ne comprends pas pourquoi. Je dois dire que même si j'utilise la même valeur "name" sous une autre forme, si je ne le fais pas, l'instruction if(isset($_POST['cats'])){ ne sera même pas transmise.
Depuis votre formulaire, la page d'action est "product-list.php", est-ce la même page où vous gérez la logique du formulaire ?
Sinon, vous devez écrire le code suivant dans le product-list.php que vous avez créé.