Page 1 sur 1
Pouvoir choisir un include
Posté : 15 avr. 2008, 13:38
par maelinn
Bonjour tout le monde !
Voila mon probleme : j'ai un site structuré avec un include dans lequel je mets tout le haut de page avec la structure du site. Dedans, il y a d'autres include pour appeler cettaines div de menu avec un fond image en map pour les menus.
Mon souci, c'est que je voudrais pouvoir offrir aux visiteurs plusieurs résolutions d'affichage. Il faudrait pour cela que je puisse switcher entre 2 includes qui seraient adaptées en fonction du template désiré.
Ma question : est-ce possible ?
Merci pour votre aide

Posté : 15 avr. 2008, 14:13
par Truc
Bonjour tout seul,
tout simplement
if(choix_utilisateur)
include ("page1");
else
include("page2");
Posté : 15 avr. 2008, 14:30
par maelinn
C'est vrai je n'y avais pas pensé

Mais en pratique je fais comment ? Je suppose que je dois utiliser $_GET pour déterminer le choix de l'utilisateur mais c'est très flou... Actuellement, je n'ai pas de variable dans mes liens.
Je suis vraiment débutante, désolée...
Posté : 15 avr. 2008, 14:36
par jobart
<
if(isset($_GET['toto'])&&$_GET['toto']==bobo)
include ("page1");
else
include("page2");
Posté : 15 avr. 2008, 15:04
par maelinn
Merci pour vos réponses, mais avec ce sstème, dès que je vais changer de page, je vais revenir à la résolution d'origine vu que la variable get aura changé.
Posté : 15 avr. 2008, 15:55
par jobart
Soit tu mets dans tes liens de page la variable toto ou tu la mets dans une session
Posté : 15 avr. 2008, 16:03
par Truc
passe le contenu de GET en session
session_start(); // TOUT en haut de la page !!!!
if(isset($_GET['toto'])) // si variable GET existe
{
// alors création variable de session avec la page a inclure... par défaut "page1"
if($_GET['toto']=="page2")
$_SESSION["skin"] = "page2";
else
$_SESSION["skin"] = "page1";
}
elseif(!isset($_SESSION["skin"])) // Si pas de GET et pas de var de session = initialisation
$_SESSION["skin"] = "page1";
include($_SESSION["skin"]);
c'est quand même un peu le zouk

... le principe y est...
d'autres façon de faire existent mais ici c'est très compréhensible
regarde
ce sujet pour essayer de rendre ça plus compacte

Posté : 15 avr. 2008, 16:05
par hakazizi
ce n'est pas dangeureux de mettre en direct le contenu facilement modifiable dans une sessions sans verification?
Posté : 15 avr. 2008, 17:06
par Truc
ce n'est pas dangeureux de mettre en direct le contenu facilement modifiable dans une sessions sans verification?
comment ça ?
Des tests sont fait
if($_GET['toto']=="page2")
if(!isset($_SESSION["skin"]))
et des valeurs par défaut aussi
else
$_SESSION["skin"] = "page1";
$_SESSION["skin"] = "page1";
une autre méthode est de placer en tableau les pages valides
$validPages = array("page1","page2");
if(in_array($_GET['toto'],$validPages )
{
// ok
}
Posté : 15 avr. 2008, 19:35
par maelinn
Merci pour vos réponses, je vais essayer ça
