[HTML-PHP] Question de conception

Résolu/Fermé
Myrza Messages postés 91 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 29 mars 2009 - 5 mars 2008 à 00:54
Myrza Messages postés 91 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 29 mars 2009 - 5 mars 2008 à 18:42
Bonjour,

Je dois concevoir un site dynamique web 2.0 pour une equipe de recherche en telecom... (ca c'est pour planter le decors)

En fait le site a la structure suivantes:

- Une image en entéte.
- Un partie gauche qui represente les menus et les modules.
- Une partie principale qui represente les textes et les contenus.
- Une image en bas.

Bref en faite j'aimerais que seul la partie principale soit fixe , le reste doit etre fixe... (un peu comme la partie droite dans ce site).
Et ma question est quelle philosophie choisir et comment fait-on?
Par exemple dans mon menu j'ai un lien sur "Membre" et quand je clique dessus je veux que la liste des membre s'affiche sur la partie principale:
* Je recopie tout le code d'index.php et je le copie dans un fichier "membre.php" en changeant le contenu que je dois changer?
* Je divise mes site en frames ? (Pour l'instant il est divisé en tableau)
* J'utilise des balises div ?

Dans les deux derniers cas comment faire pour que lorsque je clique sur le lien , seul la partie principale soit dynamique? (sachant que l'administrateur doit etre capable de rajouter du contenu sans trop de problemes)

un apercu : http://myrza.free.fr/PJI/index.php

Je sais qu'il doit deja y voir des sujets qui traitent la dessus mais je ne savais pas comment rechercher.

Merci beaucoup...

4 réponses

Frappe Misere Messages postés 2677 Date d'inscription vendredi 22 février 2008 Statut Membre Dernière intervention 10 août 2011 567
5 mars 2008 à 01:47
le plus simple est de passer par des frames mais tu peux aussi tricher en recopiant le menu et l entete sur toutes les pages.
0
Xil Messages postés 350 Date d'inscription vendredi 18 janvier 2008 Statut Membre Dernière intervention 11 juin 2009 257
5 mars 2008 à 09:41
le plus simple est de passer par des frames
En php, non.

En php, il existe une merveilleuse fonction qui s'appelle 'include'
https://www.php.net/manual/en/function.include.php

Cette fonction permet d'inclure dans un fichier le code d'un autre fichier pour qu'il soit exécuté et que ses variables/fonctions soient accessibles.

l'idéal est de séparer chaque partie de ta page dans des fichiers séparés, ou au moins les éléments fixes et communs à toutes les pages.

De là, deux possibilités :
- soit tu sépare ton menu, ton header et ton footer, et tu les réinclude dans chaque page :
<?php
include ('header.php');
include ('menu.php');

[code du contenu de la page]

include('footer.php');


La deuxième option, c'est simplement l'inverse:
Tu met ton contenu fixe (header, menu, footer) dans une page que tu utilise tout le temps (index.php par exemple) et dedans, tu fais un include de ton contenu.
En passant une variable dans l'url, il est possible de définir le contenu à include exemple :
[code du header]
[code du menu]

if(isset($_GET['page']){
 switch ($_GET['page']){
   case 'membre': include('membres.php');
                        break;
   case 'contact' : include('contact.php');
                        break;
   case 'plan' : include('plan_du_site.php');
                        break;
   default : include('accueil.php');
 }
}

[code du footer]

Ainsi, l'url http://www.example.com/index.php?page=membre , afficherait le contenu fixe, plus le contenu du fichier membres.php
Et donc forcément, les fichiers de pages ne doivent contenir plus que le code correspondant au contenu.

Les deux options permettent de ne pas devoir réécrire tout le code commun.
0
Frappe Misere Messages postés 2677 Date d'inscription vendredi 22 février 2008 Statut Membre Dernière intervention 10 août 2011 567
5 mars 2008 à 11:32
c'est bien le php, include devient synonyme de frame :)
mais j'avoue débuter egalement le php...
0
Myrza Messages postés 91 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 29 mars 2009 5
5 mars 2008 à 18:42
Merci pour votre aide , en effet ca marche niquel ;)

Et point de vue securité ca tient la route avec cette methode puisqu'on passe le lien avec une methode GET.
0