Je suis hyper débutante. J'ai consulté des bases en ligne XHTML, CSS... jusque là tout vas bien.
J'ai créé une version test de mon futur site (9 pages liées en tout, même pas encore en ligne), pour vérifier ma compréhension. J'ai même vérifié le tout sur le site W3C. J'étais contente et enthousiaste. Smiley biggrin
Et puis on me parle de pages dynamiques. Je me renseigne et j'ai des doutes... Frames ou Include ? Pour un premier site perso, quoi privilégier ?

- Votre site a l'air favorable à Include. Pourtant, les frames, le site W3C en donne le mode d'emploi...est-ce donc juste une querelle de chappelle ? Je suis donc un peu perdue...
- Comme ma première tentative de test s'est soldée par un échec que je n'arrive pas à solutionner depuis deux jours en dépit des tutos et questions/réponses... j'hésite d'autant plus. Smiley sweatdrop
Par ailleurs
- l'utilisation d'include imposant l'extension .php, les pages sont-elles vérifiables encore après par W3C ?
Salut,

Tu peux tout à faire utiliser des frames pour peu que tu choisisses le bon doctype pour les pages de ton site. Ensuite, il faut les utiliser comme il se doit pour éviter certains problèmes d'accessibilité, mais je ne sais pas si c'est un sujet déja dans tes connaissances.

Tu peux bien évidemment utiliser le système d'include en php, qui sera certainement la manière la plus propre, mais aussi la plus compliquée si tu ne maîtrise pas bien php, de faire la même chose.

Concernant la validation, il ne faut pas oublier que le validateur interprète le rendu final de la page, après application du code php. Ainsi, il n'analysera que des balises html et leur contenu. Tes pages en extensions .php seront donc tout à fait validables de la même manière. Smiley cligne
Pour un site d'une dizaine de pages, il y a aussi la solution ni frames ni PHP mais des pages HTML statiques complètes. Smiley cligne
Chaque page contiendra alors le code des éléments communs à toutes les pages (en-tête, menu, une bonne partie du contenu de l'élément head, etc.).
Tout à fait d'accord avec Florent.
Les frames ou les includes php ça sert a ne pas avoir a faire des copier coller sur toutes tes pages à chaque modification du menu. Mais pour 9 pages, ça fait juste 9 copier/coller ça ne devrait pas être très long.
Oulà, j'aurais beaucoup plus de 9 pages... Là c'était qu'un test pour vérifier si j'avais bien intégré comment créer les pages avec HTML CSS et les lier par mes boutons.
En fait c'est maintenant que je vais passer aux choses sérieuses (en ajoutant un haut de page au passage).
Bon je vais essayer de maîtriser cette fonction include qui pour l'instant me résiste (j'ai toujours pas trouvé où je merdoie).
Par contre j'ai une question de plus à poser, purement théorique. Il y a sans doute une bonne raison à la chose mais bon...
Dans tous les tuto basiques que j'ai vu, on donne l'exemple d'include sur la bannière, le menu et le bas de page, et ceci donc sur chaque page de site.
Pourquoi c'est pas l'inverse ? Ce qui ne change pas, donc en quelque sorte, une page unique contenant ces trois parties, et le include uniquement sur ce qui change ?
Modifié par Yataf (23 Feb 2008 - 12:06)
Salut,
Yataf a écrit :
Dans tous les tuto basiques que j'ai vu, on donne l'exemple d'include sur la bannière, le menu et le bas de page, et ceci donc sur chaque page de site.
Pourquoi c'est pas l'inverse ? Ce qui ne change pas, donc en quelque sorte, une page unique contenant ces trois parties, et le include uniquement sur ce qui change ?
Parce que c'est plus compliqué Smiley smile

Le contenu dynamique des pages peut aussi être appelé via des include (ou plus souvent en allant pêcher ce qu'il faut dans la base de données) mais dans ce cas il faut gérer le passage de variables via l'URL (index.php?page=machin), ajouter un peu d'URL Rewriting pour que ça soit plus joli, plus lisible et mieux référencé, etc.

Le tutoriel sur la fonction include ne propose pas vraiment de transformer un site statique en un site dynamique, il permet simplement d'utiliser PHP pour faciliter la maintenance des pages en stockant les éléments récurrents dans des fichiers uniques.