Structure type d'une page (1/2)
Comment structurer ses pages ASP ou PHP ?
"Didier, organise-toi un peu !" ainsi parlait mon vieux maître Zaramouss alors qu'à l'aube de ma vie de Webmestre, je dispersais joyeusement des pages diverses et variées aux 4 coins du Net... et passais ensuite des heures à chaque petite modif des sites !
Le principe est simple, on découpe les pages en morceaux et chacune appelle les modules dont elle a besoin... ces modules étant partagés, la maintenance du site est ainsi grandement facilitée :
_top.asp
<% ' Quel navigateur ? Nav = Request.ServerVariables("HTTP_USER_AGENT") if inStr(Nav,"MSIE")=0 then Nav="NN" _ else Nav="IE" %> <HTML><HEAD><TITLE><%=titre%> </TITLE> <!-- Feuille de styles adaptés au navigateur --> <LINK REL="stylesheet" TYPE="text/css" HREF="/styles_<%=Nav%> .css"> </HEAD><BODY> <table width=100%><tr><td> description du bandeau haut </td></tr></table> <table width=100%><tr><td width=120 valign=top> menu de gauche </td><td valign=top>
page_1.asp
<% titre="Ma super page 1" %> <!-- #include virtual="/_top.asp"--> et bla bla bla...<!-- #include virtual="/_btm.asp"-->
page_2.asp
<% titre="Ma page 2" %> <!-- #include virtual="/_top.asp"--> et autre bla et rebla rebla...<!-- #include virtual="/_btm.asp"-->
_btm.asp
<center>© ASP-PHP.net 2001 - <A href="#">Haut de la page</A> </td><td width=100 nowrap valign=top> menu de droite </td></tr></table> </BODY></HTML>
NB 1 : Un include peut en appeler d'autres !...
NB 2 : l'adresse du fichier à inclure peut être soit
relative : <!-- #include file="_top.asp"-->
absolue : <!-- #include virtual="/_top.asp"-->
_top.php
<? // Quel navigateur ? $nav = getenv("HTTP_USER_AGENT"); if(strpos($nav,"MSIE")) $nav="IE"; else $nav="NN"; ?> <HTML><HEAD><TITLE><? echo $titre; ?> </TITLE> <!-- Feuille de styles adaptés au navigateur --> <LINK REL="stylesheet" TYPE="text/css" HREF="/styles_<? echo $nav; ?> .css"> </HEAD><BODY> <table width=100%><tr><td> description du bandeau haut </td></tr></table> <table width=100%><tr><td width=120 valign=top> menu de gauche </td><td valign=top>
page_1.php
<? $titre="Ma super page 1";include("_top.php") ; ?> et bla bla bla...<?include("_btm.php") ; ?>
page_2.php
<? $titre="Ma page 2";include("_top.php") ; ?> et autre bla et rebla rebla...<?include("_btm.php") ; ?>
_btm.php
<center>© ASP-PHP.net 2001 - <A href="#">Haut de la page</A> </td><td width=100 nowrap valign=top> menu de droite </td></tr></table> </BODY></HTML>
NB : on peut inclure un fichier de 2 manières :
<? include("_top.php") ; ?> inclue et évalue le fichier, si la ligne de code est exécutée (ignoré dans une structure conditionnelle fausse par ex.)
<? require "_top.php" ; ?> inclue systématiquement le fichier qu'il soit utilisé ou non.
Didier le
17/01/2007
(325 162 hits)
Au fil des news CSharp - Sérialisation XML de vos objets Magazines - Le n°121 de Programmez est disponible Adobe - Adobe annonce MAX 2009 ! Outils - WhoIs [MAJ] Dreamweaver MX + Php + MySql - Les formulaires - partie 3 Mise à jour du code, par DB 77, affichage du code erreur, dans la page erreur.php, traduction des ... PHP - News avec photo - Système de gestion - affichage Gestion - Administration - Affichage d'une "News", "Actualité", "Info", ... avec : - mise en forme ... Outils - Crypt Dreamweaver Php Mysql - Région répétée imbriquée Je rebondis, sur un post du forum, pour vous montrer comment obtenir grâce à l'extension Simulated ... Magazines - Le n° 120 de Programmez est disponible Gérer les bases de contenu SharePoint - Gérer la croissance du volume des données Dans le cadre de la gestion quotidienne de ferme SharePoint, il existe une partie qu'il faut ... PHP - Le Coach PHP sur Visual Studio .NET - Ecrire une application .NET utilisant MySQL PHP - Utilisation de PHP dans le monde Microsoft Magazines - Le n° 119 de Programmez est disponible Adobe - Adobe annonce Photoshop Marketplace [MAJ] Tutoriel AJAX simple - En avant vers le WEB2.0 Mis à jour le 20/04/2009 Captcha «maison» sans extension - Et en plus, c'est gratuit ;) Un ami m'a demandé de l'aide ce matin pour insérer un captcha dans un formulaire pour son site ... Dreamweaver CS4 - Photoshop CS4 - Alliance parfaite pour la gestion des images Pour changer un peu des pages de code, je vous propose de voir ensemble, la fonctionnalité très ... JavaScript - Calcul automatique d'une facture Amélioration du Search MOSS: Manipulation XSL - Utilisation du XSL dans l'affichage des résultats Parmi tous les articles sur l'amélioration du moteur de recherche de Microsoft Office SharePoint ... Outils - Editeur d'icônes IcoFX Magazines - Le n°118 de Programmez est disponible JavaScript - Imprimer une autre page que celle en cours CSS - div pour imiter frame (Bandeau/Menu FIXES) [MAJ] [PHP] Un calendrier très complet - ajout des événements au calendrier PowerShell - Winforms pour l'aide des commandes GET PowerShell Adobe - Adobe Photoshop Lightroom 2 est offert .... Amélioration du Search MOSS: synonyme et Best Bet - La gestion des synonymes dans MOSS Search Le moteur de recherche de MOSS permet la configuration d'une liste de synonymes. Nous verrons donc ... AJAX - récup champs formulaires pour POST en AJAX PowerShell - Un windows Forms pour SharePoint en PowerShell Sondage associatif (compatibilité) - Qui va bien avec qui ? Cette fois, c'est un petit sondage que je vous propose. Il pourra bien sûr être adaptée à vos ... ASP - Hashage MD5 (cryptage irréversible) Adobe - 80% de réduction sur les versions Adobe Creative CSharp - Interroger un serveur Whois CSharp - Equivalent de la fonction PHP htmlentities() CSharp - Somme de contrôle CRC32 Magazines - Le n°117 de Programmez est disponible Hebergement - Hébergement ASP et ASP.Net MOSS - Mon Profil - Personnalisation des profils utilisateurs de MOSS La gestion des profils utilisateurs de SharePoint fait partie des fonctionnalités de base de ... Dreamweaver CS3 + Php + Mysql - Le Jeu d'Enregistrements - Les fondamentaux Part-3 La 3ème partie des fondamentaux, traitera essentiellement du jeu d'enregistrements ou Recordset. ...