Bonjour, je voudrais quelques conseils concernant la mise en place d'un site, où il ya toujours la même structure, une bannière en haut, un menu à gauche et le contenu à côté du menu ...

J'ai lu le tutoriel sur alsacréations pour simuler les frame, c'est pas mal comme méthode. Mais disons que l'on a un menu qui a des sous-menus, et qu'en fait, pour tous les sous-menu, il s'agit de la même page mais avec un paramètre dans l'url indiquant ce qu'on doit afficher de la page. Comment on fait dans ce cas là ??

Parce que si je fais ça :


<a href="#">Goodies</a>
	<ul>
		<li><a href="index.php?section=goodies&categorie=wallpaper">Wallpaper</a></li>
		<li><a href="index.php?section=goodies&categorie=avatar">Avatars</a></li>
		<li><a href="index.php?section=goodies&categorie=banniere">Bannières</a></li>
	</ul>



Dans le include, on peut pas dire : include('goodies.php?categorie=avatar');

Alors comment on peut procéder ?? include des fichiers php qui seraient en fait des fonctions d'affichage de la page et qui prendrait en paramètre la categorie ??

En fait, je voudrais juste une piste pour pas partir dans tous les sens !!

J'espère que j'ai été assez claire, merci pour vos réponses
Modifié par poopsinou (13 Jul 2006 - 20:44)
Tu fais un goodies.php qui sera inclu dans ton index.php, et dans ce goodies.php tu inclues ce que tu veux en fonction de la valeur de $_GET['categorie'].

Soit avec des conditions (if, case), soit avec un système de ce type :
$categorie = $_GET['categorie'];
include($categorie.'.php');

De la sortes tu inclus wallpaper.php, avatar.php ou banniere.php…

Hmm… je suis pas sûr à 100% que mon code n'aient pas quelques erreurs de syntaxe. C'est du direct live non testé.
Ok, mais ce que je veux, c'est ne pas faire de distinction entre avatar, wallpaper et bannière, parce qu'a priori ça sera les mêmes pages !! En fait je voulais que goodies soit cette page et qu'elle affiche ce qu'elle a a affiché et pour els titres à distinguer faire un if (si c'est avatar, j'affiche entitre "avatar"), etc etc
Mmmh, tu n'aurais pas posé la même question dans un autre sujet ? J'ai l'impression d'avoir répondu il y a dix minutes ... Smiley biggol
Oui c'est tout à fait vrai lol Mais j'ai pas encore trouvée ma réponse je crois, je vais réfléchir !
Il a encore plusieurs solutions ...

Tu peux éventuellement mettre des tests partout où le texte est susceptible de changer dans la page goodies.php
<h1><? switch ($_GET['categorie']) : case "avatar": echo "avatar"; break; case "wallpaper" : echo "wallpaper"; break; endswitch; ?></h1>
mais ça va vite être pénible.

Tu peux aussi créer une sorte de mini-template à l'aide de fonctions, pour garder un code plus lisible :
<?
function afficherTitre() {
    $categorie = $_GET['categorie'];
    switch ($categorie) :
        case "avatar" : echo "<h1>Avatar</h1>"; break;
        case "wallpaper" : echo "<h1>Wallpaper</h1>"; break;
    endswitch;
}
// et ainsi de suite pour les divers éléments variables de la page

et dans la page goodies.php :
<div id="header"><? afficherTitre(); ?></header>
...


Mais bon, le plus simple serait quand même de recourir à des fichiers supplémentaires à inclure ...
Bon ben je crois je vais peut-être opté pour ce que tu as dis en dernier !
Je crois aussi ça serait plus simple, sans tests ni rien lol

Merci pour vos réponses!