<!DOCTYPE html>
<html>
 <head>
	<meta charset="utf-8" />
  	<link href="style/style.css" rel="stylesheet" type="text/css" />
	<title>SiteWebShop</title>

</head>
<body>
	<!-- ce fichier a pour but d'afficher tous les articles par catégorie, le choix de la catégorie est indiqué dans l'URL (GET) à l'aide du numéro de la catégorie. On peut aussi afficher les articles de toutes les catégories (all) -->

	<?php include("header.php"); /* comme pour la page d'accueil index.php, on inclut dans cette page le header écrit dans header.php */ ?>	

	<section>
		<?php include("connexion.php"); include("utile.php"); /* on inclut également le point de connexion au SGBD (connexion.php) et la fonction nous permettant de tronquer du texte (utile.php) */ ?>
		<?php
			if(isset($_GET["cat"]) && !empty($_GET["cat"])) {	// on teste si la variable $_GET["cat"] existe ET n'est pas vide. On teste donc si dans l'URL on voit ?cat=id_choisi
				if($_GET["cat"] == "all") {	// on teste si la variable cat passée par GET est égale à "all"
					$sqlALL="SELECT * FROM article";	// le cas échéant, on écrit une requête SQL pour récupérer TOUS les éléments de la table SQL article
					$retourALL=$connexion->query($sqlALL);	// on envoie alors la requête au SGBD via PDO
					$resultatALL=$retourALL->fetchAll(PDO::FETCH_ASSOC);	// puis on récupère TOUT ce que nous renvoie ce dernier sous forme de tableau associatif
					echo "<ul id=\"product-list\">";	// les lignes 22 à 32 sont identiques au code permettant l'affichage des produits dans le fichier index.php	 (lignes 35 à 45)
					foreach($resultatALL as $val) {
                        echo "<li class=\"product\">";
                        echo "<h3>". $val["designation"] ."</h3>";
                        echo "<img src=\"". $val["img_article"] ."\" alt=\"Image article\" />";         
                        echo "<strong>". $val["prix"] ."€</strong>";
                        echo "<p>". tronquer_texte($val["description"]) ."</p>";
                        echo "<a href=\"vue_produit.php?article=". $val["id"] ." \">Voir les détails...</a>";
						echo "</li>";
                    }
                    echo "</ul>";
				}
				else {	// sinon (si cat != "all")
            		$numCat=$_GET["cat"];	// on stocke le contenu de la variable 'cat' passée par GET (dans l'URL) dans une variable 'numCat'
            		$sql="SELECT * FROM article WHERE id_categorie=$numCat";	// cette requête permet ensuite de récupérer tous les articles dont leur id_categorie (dans la table SQL) est égal à numCat
            		$retour=$connexion->query($sql);	// on envoie alors la requête toujours via PDO
            		$resultat=$retour->fetchAll(PDO::FETCH_ASSOC);	// puis on récupère TOUT ce que le SGBD nous renvoie, sous forme de tableau associatif
					echo "<ul id=\"product-list\">";	// la suite (lignes 39 à 49) est identique aux lignes 22 à 32 (affichage des articles)
					foreach($resultat as $valeur) {
						echo "<li class=\"product\">";
						echo "<h3>". $valeur["designation"] ."</h3>";
						echo "<img src=\"". $valeur["img_article"] ."\" alt=\"Image article\" />";
						echo "<strong>". $valeur["prix"] ."€</strong>";
						echo "<p>". tronquer_texte($valeur["description"]) ."</p>";
						echo "<a href=\"vue_produit.php?article=". $valeur["id"] ."\">Voir les détails...</a>";
						echo "</li>";
					}
					echo "</ul>";
				}
			}
			else {	// sinon, s'il n'y a pas de variable cat ou que celle-ci est vide...
				header("Location:index.php");	// ...on renvoie l'utilisateur sur la page d'accueil
			}
		?>
	</section>

	<?php include("footer.php"); /* comme dans toute page de ce site, on inclut le footer déjà écrit dans footer.php */ ?>
</body>
</html>
