Affichage div selon page en cours

Résolu
houba_houbi Messages postés 119 Date d'inscription   Statut Membre Dernière intervention   -  
 houba_houbi -
Bonjour,

Je souhaiterai savoir s'il est possible de créer un template xhtml/css où on dispose toutes les Div possibles et imaginables et selon la page en cours d'affichage, on affiche ou masque les div nécessaires ?

Par exemple, si ma page en cours s'appelle :
- "appartement1", j'affiche la div "promo appart1", "dispo appart1",
- "appartement2", j'affiche la div "promo appart2", "dispo appart2",
- sinon j'affiche la div "toutes les promos", "toutes les dispos"

Merci d'avance pour votre aide

6 réponses

chupa23 Messages postés 149 Date d'inscription   Statut Membre Dernière intervention   28
 
Ba il suffit de créer tes div dans des fichiers spécifique, ensuite tu récupère le nom de ta page et tu inclue la bonne div.
$pageactuelle = $_SERVER['REQUEST_URI'];
 if ($pageactuelle == 'appartement1.php') 
{
include('appartement1.inc');
}
else if ($pageactuelle == 'appartement2.php')
{
include('appartement2.inc');
}
else
{
include('promo.inc');
}
0
houba_houbi Messages postés 119 Date d'inscription   Statut Membre Dernière intervention   16
 
Merci Chupa23
C'est tout bête ! mais comme je suis limitée en php...
Une question pourquoi les fichiers sont .inc et pas .php ?
0
chupa23 Messages postés 149 Date d'inscription   Statut Membre Dernière intervention   28
 
Salut
Cela ne change rien dans le code , pas d'inconvénients ni d'avantage mais tu sera qu'il s'agit d'une page en include.
0
okuni Messages postés 1221 Date d'inscription   Statut Membre Dernière intervention   126
 
J'ai un avantage niveau sécurité a appeler une page inc (ou mieux pour la lecture via un programme .inc.php).
lors d'include de fichier (avec un get je met un regex et si le fichier contient .inc je ne l'introduit pas. ça permet de na pas afficher des include qu'on ne voudrait pas.
0
chupa23 Messages postés 149 Date d'inscription   Statut Membre Dernière intervention   28
 
okuni , je ne comprends pas la sécurité que pourrait apporter un tel script, cela bloque l'include non voulu de .inc ?Mais de pas de .php ? Ca ne sert a rien... Un utilistauer peut très bien envoyer un .inc ou un .php.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
okuni Messages postés 1221 Date d'inscription   Statut Membre Dernière intervention   126
 
C'est un peu abstrait, voici un exemple :
Ma page s'appelle index.php?page=test
if(!empty($_GET['page']))
		{
			if(file_exists($_GET['page'].'.php') AND !preg_match("/(\.|config|inc)/iU", $_GET['page']))
			{
				include ($_GET['page'].'.php');
			}
			else
			{
				include('accueil.php');
			}
		}
		else
		{
			include('accueil.php');
		}

avec ce code, php va vérifier si test.php existe et qu'il ne contient pas de .inc ou config.
si c'est le cas alors il affiche test.php sinon accueil.php
Si tu ne met pas cette regex et la fonction file_exists, un pirate pourrait mettre l'include qu'il veut.
si tu met uniquement la fonction file_exists, alors le pirate pourra includé un fichier que tu ne veux pas qu'il soit affiché (Que ce soit un pirate un un visiteur qui chipote dans la barre d'adresse ;))
0
houba_houbi
 
Bonjour,

Je n'ai rien compris aux notions de sécurité...
mais en tout cas le script marche.... merci !!!

Donc je clos le sujet
0