Création de la page d'accueil du site

Attention, depuis PHP 5.5.0, certaines extensions SQL sans doute utilisées dans ce tutoriel peuvent être obsolètes et seront supprimées dans le futur, vous devez donc adapter les codes! Exemples ici.

Dans cette étape, nous allons créer un nouveau fichier nommé "index.php" qui sera enregistré dans le dossier "creer-un-site-dynamique". Ce fichier sera donc la page d'accueil du site.

La création et mise en place de la page d'accueil du site est très simple et fonctionne comme la  plupart des systèmes de blogs (je crois ^^...).
Nous allons juste afficher les X derniers articles avec une simple requêtes. Dans cette exemple, je veux afficher le titre et la description des 5 derniers articles.

<?php
//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 selectionne les 5 dernières entrées
$result1 = mysql_query("SELECT id,titre,description FROM CONTENU ORDER BY id ASC LIMIT 
5"
);   while($affiche = mysql_fetch_array($result1)) { echo '<div class="cadre">
<h2><a title="'
.$affiche['titre'].'" href="page.php?id='.$affiche['id'].'">'.$affiche
[
'titre'].'</a></h2>
'
.nl2br($affiche['description']).'
</div>'
; } ?>
Comme vous l'avez surement constaté, la navigation au seins d'un site dynamique réside essentiellement dans la transmission des identifiants (id) d'une page à l'autre.

Partant du principe ou vous êtes un débutant dans le domaine, je vais donc vous expliquez le fonctionnement d'une partie de ce code et notamment le lien vers les articles.
Supposons que nous ayons enregistré 3 articles dans notre base de données. Le code ci-dessus et plus particulièrement la boucle while, va nous retourner les 5 derniers enregistrements.

La ligne suivante :

<a title="'.$affiche['titre'].'" href="page.php?id='.$affiche['id'].'">'.$affiche
['
titre'].'</a>
..va donc nous retourner quelques chose comme ça :
<a title="Titre 1" href="page.php?id=1">Titre 1</a>
<a title="Titre 2" href="page.php?id=2">Titre 2</a>
<a title="Titre 3" href="page.php?id=3">Titre 3</a>

On constate que le lien généré utilise une seule et même page "page.php" et c'est cette unique page qui va nous pemettre d'afficher tout nos articles...vous me suivez ??
En gros, si vous avez l'habitude d'avoir 3 pages bien distinctes pour chacuns de vos articles, là, c'est une seule et unique page qui va permettre d'afficher tout vos articles ... c'est ce que l'on apelle une page dynamique .

Comme la boucle while "ressort" un identifiant (id) différent à chaque tour " "page.php?id=1", "page.php?id=2" ", etc., c'est grâce à celui-ci que notre contenu affiché dans la page "page.php" va être différent et correspondre aux liens généré par la boucle...

Prenons l'exemple de mon site qui affiche plus d'une centaines d'articles. Si vous pensez que celui-ci contient réellement une centaines de pages créées à la main, vous vous trompez, car en réalité, tout les articles sont affichés dynamiquements grâce à une seule et unique page .


Le fichier "index.php" dans son ensemble:
<?php
//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.');
?>
<!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>Exemple d'un site dynamique</title> 
<meta name="Description" content="Exemple d'un site créé dynamiquement grâce au langage PHP et SQL." /> 
<link href="style.css" rel="stylesheet" type="text/css" /> 
 
</head> 
 
<body> 
 
<div id="moncadre"> 
 
<?php include('menu.php');?> 
 
<div class="cadrecentrale"> 
 
<h1>Exemple d'un site dynamique</h1>
 
<?php
//On selectionne les 5 dernières entrées 
$result1 = mysql_query("SELECT id,titre,description FROM CONTENU ORDER BY id ASC LIMIT 5");
while($affiche = mysql_fetch_array($result1)){ 
echo '<div class="cadre"><h2><a title="'.$affiche['titre'].'" href="page.php?id='.$affiche['id'].'">'.$affiche['titre'].'</a></h2> '.nl2br($affiche['description']).' </div>'; 
} 
?> 
</div> 
 
<?php include('footer.php');?> 
 
</div> 
 
</body>  
</html> 
Voir/déposer un commentaire (25) | Signaler un problème