Tout votre site en une seule page : index.php?module=trucbidule ...

Soyez le premier à donner votre avis sur cette source.

Snippet vu 18 687 fois - Téléchargée 29 fois

Contenu du snippet

Ce script permet grâce à des includes de mettre tout votre site en une seule page. Comment ? grâce à la fonction include. Cette fonction permet d'inclure le code d'un fichier dans la page l'appelant.

Il vous paraitra peut-être un peu compliqué, mais il est très facile et simplifie grandement les choses.

Source / Exemple :


// votre fichier index.php :

<?php

include "header.php";

// Récupération des variables d'url (méthode GET ou POST)
if (isset($_REQUEST['module']))
  $module = $_REQUEST['module'];
else
  $module = "accueil";
if (isset($_REQUEST['page']))
  $page = $_REQUEST['page'];
else
  $page = "index";

if (file_exists("modules/$module/$page.php") == true) {
  include "modules/$module/$page.php";
} elseif (is_dir("modules/$module/")) {
  include "modules/$module/index.php";
} else {
  include "modules/accueil/index.php";
  $module = "accueil";
}

include "footer.php";
?>

// le fichier header :

<html>
<head>
<title>mon titre</title>
</head>
<html>
Menu :
<a href="index.php?module=lien1">lien1</a>
<a href="index.php?module=lien1&page=page2">lien1>page2</a>

// le fichier footer.php :
<br><br>
Tous droits réservés blablabla
</body>
</html>

// un fichier quelconque de contenu

voilà le contenu de cette page, qui sera inséré entre le fichier header et le fichier footer, inclus à partir de la page index.php?module=marubrique

Conclusion :


le fonctionnement est simple : le site est articulé en rubriques pouvant contenir plusieurs pages.

on appelle la page index.php?module=marubrique&page=mapage si on veut aller à marubrique > mapage
on appelle la page index.php?module=marubrique si on veut aller à marubrique
on appelle index.php pour aller à la rubrique accueil

au niveau des fichiers, tu as un répertoies modules/ dans lequel pour chaque rubrique tu as un fichier de son nom contenant au minimum une page index.php.
lorsque le lien index.php?module=marubrique est appelé, le script inclus (s'il existe) le fichier modules/marubrique/index.php
lorsque le lien index.php?module=marubrique&page=mapage est appelé, le script inclus le fichier (s'il éxiste) modules/marubrique/mapage.php

si le lien index.php est appelé ou si le module demandé n'éxiste pas, c'est le fichier modules/accueil/index.php qui est inclus.

avant et après l'inclusion du fichier du contenu de la page sont inclus les fichiers header.php et footer.php, correspondants aux fichiers de structure du site, le haut de page, avec menu, titre, etc et le bas de page, avec les copyrigths, contact, ...

A voir également

Ajouter un commentaire

Commentaires

Totofweb
Messages postés
57
Date d'inscription
mercredi 18 septembre 2002
Statut
Membre
Dernière intervention
19 juin 2006
-
N'hésitez pas à laisser vos commentaires ou vos améliorations.

Bien sûr, il ne s'agit là que de la base, on peut faire beaucoup mieux, mais après chacun voit en fonction de son besoin.

Totofweb
cs_Tortuegeniale
Messages postés
1123
Date d'inscription
lundi 7 janvier 2002
Statut
Membre
Dernière intervention
26 juin 2008
1 -
sécurise ton script : met des expressions réguliere pour filter le nom du dossier et de la page.

De plus j'ai fait une source pour exactement le meme sujet http://www.phpcs.com/article.aspx?Val=403
JEROMAX
Messages postés
278
Date d'inscription
jeudi 22 février 2001
Statut
Membre
Dernière intervention
7 octobre 2013
-
le probleme, c'est que si tu met, à la place de mapage, le nom d'un fichier qui existe, mais qui ne doit pas être visible par l'utilisateur(comme un fichier .htaccess), il va s'afficher en clair sur l'écran du client....

JEROMAX
http://www.jeromax.free.fr
cs_Tortuegeniale
Messages postés
1123
Date d'inscription
lundi 7 janvier 2002
Statut
Membre
Dernière intervention
26 juin 2008
1 -
Jeromax> Ouais mais la il explique juste comment la page fonctionne. Comme je l'ai dit sur ma source ki parle de la meme chose : c'est pas juste cette page qui doit etre sécurisé mais tout le site. Donc pour protéger ses pages qu'il ne veut pas qu'elles soient affichées y a le htaccess comùe tu dis mais aussi les sessions ...
JEROMAX
Messages postés
278
Date d'inscription
jeudi 22 février 2001
Statut
Membre
Dernière intervention
7 octobre 2013
-
TortueGeniale> Ouaip !

JEROMAX
http://www.jeromax.free.fr

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.