IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

HTML Discussion :

Décomposer ma page


Sujet :

HTML

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Homme Profil pro
    aux études mais 40 ans
    Inscrit en
    Juin 2004
    Messages
    2 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : aux études mais 40 ans

    Informations forums :
    Inscription : Juin 2004
    Messages : 2 037
    Par défaut Décomposer ma page
    Bonjour,

    Ma question n'est pas très évoluée mais je n'ai pas vraiment trouvé comment faire.
    J'ai un site avec plusieurs pages HTML.
    Sur presque toutes ces pages on retrouve des parties communes, L'en-tête, le menu, le pied de page,....
    Mais en fait surtout le menu !
    Par contre ça me gonfle un peu de devoir modifier toutes les pages quand je veux changer un truc.
    Du coup je me disais est ce que je ne pourrais pas faire une page avec juste le code de mon menu et appeler ce code dans ma page de cette manière si je modifiais mon menu il se modifierait dans toutes les pages ?
    Je sais que c'est possible mais je en sais pas comment ca marche ni même comment ça s'appel.

  2. #2
    Membre extrêmement actif
    Avatar de Muchos
    Homme Profil pro
    Enseignant
    Inscrit en
    Décembre 2011
    Messages
    1 704
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Décembre 2011
    Messages : 1 704
    Billets dans le blog
    6
    Par défaut
    PHP sait faire ça ! ®
    Il s'agit de la fonction include() : on inclut du code issu d'un fichier dans un autre. La page qui émet l'include sera évidemment de type PHP.

    Voici un exemple de page servie au client. On a inclu l'en-tête, le menu et le pied-de-page depuis le dossier "includes" situé à la racine du site.
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    <!doctype html>
    <html dir="ltr" lang="fr-FR">
    <head>
    	<meta charset="UTF-8" />
    	<title>Ma page avec includes</title>
    </head>
    <body>
    	<?php include($_SERVER['DOCUMENT_ROOT']."/includes/header.php"); ?>
     
    	<?php include($_SERVER['DOCUMENT_ROOT']."/includes/nav.php"); ?>
     
    	<main role="main">
    		...Du super contenu...
    	</main>
     
    	<?php include($_SERVER['DOCUMENT_ROOT']."/includes/footer.php"); ?>
    </body>
    </html>

    Ici, mes includes sont de type PHP : ainsi, on peut tout à fait mettre des Includes dans les fichiers inclus !

  3. #3
    Membre Expert
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2008
    Messages
    1 051
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Hautes Pyrénées (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 051
    Par défaut
    PHP sait faire ça !
    S'il a posé la question dans la partie HTML c'est qu'il n'utilise pas PHP ...

    Utiliser PHP juste pour faire un include c'est dommage, et nécessitera un serveur qui gère PHP par la même occasion.

    Pour revenir au sujet, à ce stade je vois 3 solutions :
    - Utiliser la balise 'include virtual' en HTML, je ne connais cependant pas ses limites d'utilisation (google ),
    - Utiliser un iframe pour include ton header, menu, footer ... mais un iframe ne semble pas forcément la meilleur solution (les gens d'ici crient au scandale quand on parle d'iframe, mais des fois ça évite beaucoup de complications),
    - Utiliser Jquery qui appelera la bonne page HTML.

  4. #4
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Je suis pas trop d'accord... PHP est effectivement la solution la plus propre selon moi (et permettra aussi de répondre à d'autres demandes ultérieures).

    Utiliser les Server Side Includes peut sembler être une solution, mais encore faut-il que le serveur (et donc l'hébergeur) les accepte... Mais ça me semble plutôt bancal, ce qui explique que ça soit si peu utilisé.
    Quant au fait de nécessiter un serveur qui gère PHP, faut quand même pas exagérer... n'importe quel hébergement de base dispose de PHP.

    Pour tes autres propositions, elles sont tout simplement contraires aux bonnes pratiques (frames, iframes ou utilisation de JavaScript).
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  5. #5
    Membre Expert
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2008
    Messages
    1 051
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Hautes Pyrénées (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 051
    Par défaut
    Je suis pas trop d'accord... PHP est effectivement la solution la plus propre selon moi
    Certes, à lui de nous dire s'il a des contraintes ou pas. Personnellement si je dois faire un site statique, c'est pas pour y mettre du dynamique au milieu, surtout si mon boss exige un site HTML qui pourra être exécuter partout dans un serveur local.

    Puis j'ai déjà vu des hébergeurs gratuits où le PHP n'est pas géré, mais on revient toujours au point : qu'est-ce qu'il compte faire au final.

    Pour tes autres propositions, elles sont tout simplement contraires aux bonnes pratiques (frames, iframes ou utilisation de JavaScript).
    Je suis d'accord, j’émettais cette solution plus dans le sens pratique que propre ...

  6. #6
    Membre éprouvé
    Homme Profil pro
    aux études mais 40 ans
    Inscrit en
    Juin 2004
    Messages
    2 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : aux études mais 40 ans

    Informations forums :
    Inscription : Juin 2004
    Messages : 2 037
    Par défaut
    ET ben "IL" va faire du PHP puisque en fait c'est assez facile pour moi vu qu'a la source c'est ARTISTEER qui crée mes pages.
    Je n'ai donc qu'a changer générate HTML en générate PHP et il me pondra mes pages de base en PHP.

    Pour l hébergement je suis chez OVH donc pas de souci :-)

    Il ne me reste donc qu'une chose à faire :
    VOUS DIRE MERCI

    Je vais tester tout ça la semaine prochaine.

    A peluches...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Date - calendar] - Décomposer la date dans ma page html
    Par Mika2008 dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 10/07/2009, 17h17
  2. [web]maj de pages
    Par Gogoye dans le forum Web
    Réponses: 3
    Dernier message: 17/06/2002, 18h25
  3. Réponses: 7
    Dernier message: 01/05/2002, 20h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo