Création de la page catégorie


Nous allons créer un nouveau fichier nommé "categorie.php" qui va nous permettre d'afficher l'ensemble des articles triés par catégorie. Cette page est à enregistrer également dans le dossier "creer-un-site-dynamique" !!

Dans un premier temps, nous allons éffectuer une requête permettant de récupérer le titre et la description des catégories afin de pouvoir les afficher dans les méta-tags du site ainsi que dans la balise <h1>.

<?php
//On récupère l'id transmit par l'url
$id_transmit=$_GET['id'];
if (!isset($_GET["id"]) OR !is_numeric($_GET['id'])){
	//Si la variable n'existe pas ou qu'elle n'est pas de type numérique, on redirige
	header('location:http://'.$_SERVER['HTTP_HOST'].'');
}
else{
	// on se connecte à la base de données
	include('connexion_bd.php');
	mysql_connect("$nom_du_serveur","$nom_utilisateur","$passe");
	mysql_select_db("$nom_de_la_base") or die('Impossible de s&eacute;lectionner une
base de donn&eacute;e. Assurez vous d\'avoir correctement remplit les donn&eacute;es du
fichier connexion_bd.php.'
);   //On va chercher le nom et la description de la catégorie $nom_categorie = mysql_query("SELECT nom_categorie,description_categorie FROM
CATEGORIES WHERE id='"
.mysql_real_escape_string($id_transmit)."'"); while($cat = mysql_fetch_array($nom_categorie)) { $titre_categorie=$cat['nom_categorie']; $description_categorie=$cat['description_categorie']; } ?>

Cette première partie du code nous permet donc d'afficher la partie suivante :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/
DTD/xhtml1-strict.dtd"
> <html xmlns="http://www.w3.org/1999/xhtml" lang="fr-fr">   <head>   <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" /> <title><?php echo $titre_categorie;?></title> <meta name="Description" content="<?php echo $description_categorie;?>" />   <link href="style.css" rel="stylesheet" type="text/css"/>   </head>   <body>   <div id="moncadre"> <?php include('menu.php');?>   <div class="cadrecentrale"> <h1>Cat&eacute;gorie "<?php echo $titre_categorie;?>"</h1>

Dans un second temps, nous allons chercher tous les articles qui correspondent à la catégorie selectionnée:

<?php 
//On va chercher tout ce qui rentre dans cette catégorie
$page = mysql_query("SELECT id,titre,description FROM CONTENU WHERE id_categorie='".
mysql_real_escape_string($id_transmit)."' ORDER BY id ASC");
//on voie si il y a quelque chose
if(mysql_num_rows($page) == 0)
{
//Si il n'y a rien, on informe le visiteur
echo '<div class="cadre">Aucun article pour le moment dans la catégorie '.$titre_catego
rie
.'.</div>'; } else { //On affiche les pages qui correspondent à la catégorie et en l'occurence le titre et
la description
while($affiche = mysql_fetch_array($page)) { echo '<div class="cadre">
<h2><a title="'
.$affiche['titre'].'" href="page.php?id='.$id=$affiche['id'].'
">'
.$affiche['titre'].'</a></h2>
<p>'
.$affiche['description'].'</p>
</div>'
; } //On ferme les else } } // Fermeture de la connexion à la base de données mysql_close(); ?>

Puis on termine notre page :

</div>
 
<?php include('footer.php');?>
 
</div>
 
</body>
 
</html>

Inutile de commenter, puisque c'est quasiment tout le temps la même chose qui revient.

Catégorie Créer un site dynamique

Commentaire sur : Création de la page catégorie