gestion des pages par php ?

Le
unbewusst.sein
mes pages, grosso-modo, sont divisées en quatre parties :
- en-tête ;
- menu ;
- corps du document ;
- bas de page.

le menu change très légérement avec le contenu, seul le corps du
document change vraiment.

bon, je viens de tester un truc tout bête en php :
<?php
include 'index.html';
?>
qui me donne exactement le même contenu que index.html

c'est "légal" ça ?
(cf. <http://88.183.202.165/~yt/Amis-du-conservatoire/include.php>)

l'dée serait d'avoir donc :

pour "index.php" :
<?php
include 'header.html';
calculer le menu et l'afficher
include 'corps-index.html';
include 'footer.html'
?>

et par exemple pour ma page "cours.php", j'aurais :
<?php
include 'header.html';
calculer le menu et l'afficher
include 'corps-cours.html';
include 'footer.html'
?>

l'avantage serait que je n'aurais à changer, je suis en phase de modifs,
qu'un seul fichier pour chaque partie, le menu d'ailleurs n'étant
paramétré que par une seule variable indexant la page affichée.

j'imagine que le coût à payer serait un ralentissement du chargement des
pages ???
--
« Après avoir serré la main de ton banquier,
n'oublie pas de recompter tes doigts »
(Coluche)
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Le Fou
Le #22037671
Le 13/04/2010 18:41, Une Bévue a écrit :
c'est "légal" ça ?
(cf.
l'dée serait d'avoir donc :

pour "index.php" :
<?php
include 'header.html';
calculer le menu et l'afficher
include 'corps-index.html';
include 'footer.html'
?>

et par exemple pour ma page "cours.php", j'aurais :
<?php
include 'header.html';
calculer le menu et l'afficher
include 'corps-cours.html';
include 'footer.html'
?>

l'avantage serait que je n'aurais à changer, je suis en phase de modifs,
qu'un seul fichier pour chaque partie, le menu d'ailleurs n'étant
paramétré que par une seule variable indexant la page affichée.



Je ne sais pas si c'est légal mais c'est ce que je fais sur quelques-uns
de mes sites et ça fonctionne très bien.
Il faut juste penser à ne pas mettre les balises <head>, <title>, <body>
etv. dans toutes tes pages mais seulement aux endroits stratégiques,
pour que le code généré par la succession de 3 fichiers inclus reste
cohérent et valide.

--
A' tchao

Le Fou
http://shippylelivre.free.fr/
http://gloupclub.free.fr/
http://www.ffessm-cd84.com/
unbewusst.sein
Le #22037661
Le Fou
Il faut juste penser à ne pas mettre les balises <head>, <title>, <body>
etv. dans toutes tes pages mais seulement aux endroits stratégiques,
pour que le code généré par la succession de 3 fichiers inclus reste
cohérent et valide.



½uf corse ;-)

--
« Après avoir serré la main de ton banquier,
n'oublie pas de recompter tes doigts »
(Coluche)
Olivier Miakinen
Le #22037651
Le 13/04/2010 18:41, Une Bévue a écrit :

bon, je viens de tester un truc tout bête en php :
<?php
include 'index.html';
?>
qui me donne exactement le même contenu que index.html...

c'est "légal" ça ?
(cf.


Oui, bien sûr que c'est légal. Tu peux en profiter pour contrôler via la
fonction header() ce que tu envoies dans les entêtes, à commencer par le
charset de la page (au fait, il n'est pas indiqué non plus avec la page
index.html, ce qui est mal ©).

include.php :
----------------------------------------------------------------------
Date: Tue, 13 Apr 2010 21:30:47 GMT
Server: Apache/2.2.14 (Unix) mod_ssl/2.2.14 OpenSSL/0.9.8l DAV/2 PHP/5.3.1
X-Powered-By: PHP/5.3.1
Content-Length: 4402
Keep-Alive: timeout=5, max0
Connection: Keep-Alive
Content-Type: text/html

200 OK
----------------------------------------------------------------------

index.html :
----------------------------------------------------------------------
Date: Tue, 13 Apr 2010 21:31:19 GMT
Server: Apache/2.2.14 (Unix) mod_ssl/2.2.14 OpenSSL/0.9.8l DAV/2 PHP/5.3.1
Last-Modified: Tue, 13 Apr 2010 15:37:04 GMT
Etag: "8646b4-1132-48420088b2800"
Accept-Ranges: bytes
Content-Length: 4402
Content-Type: text/html

200 OK
----------------------------------------------------------------------

Note que tu dois avoir « Options +MultiViews » dans ta config, ce qui
permet de ne pas préciser l'extension (et donc d'en changer quand tu en
as envie sans changer d'URL). Tu peux vérifier par toi-même, les deux
liens suivants fonctionnent :


pour "index.php" :
<?php



include 'http-headers.php';

include 'header.html';
calculer le menu et l'afficher
include 'corps-index.html';
include 'footer.html'
?>



pour "http-headers.php" :
<?php
header("Content-Type: text/html; charset=UTF-8");
... gestion de cache, etc. ...
?>

et par exemple pour ma page "cours.php", j'aurais :
<?php
include 'header.html';



include 'http-headers.php';

calculer le menu et l'afficher
include 'corps-cours.html';
include 'footer.html'
?>



Oui.

l'avantage serait que je n'aurais à changer, je suis en phase de modifs,
qu'un seul fichier pour chaque partie, le menu d'ailleurs n'étant
paramétré que par une seule variable indexant la page affichée.

j'imagine que le coût à payer serait un ralentissement du chargement des
pages ???



Non : si différence il y a, elle sera imperceptible. Du moins si en
passant par PHP tu ne perds pas des optimisations qui seraient faites
automatiquement avec le fichier statique (par exemple compression à la
volée, gestion du cache, ce genre de choses). Ces questions sont en
charte sur fr.comp.infosystemes.www.serveurs si jamais tu n'obtenais
pas de réponses suffisantes ici ou en cherchant par toi-même.

Cordialement,
--
Olivier Miakinen
unbewusst.sein
Le #22037641
Olivier Miakinen

Oui, bien sûr que c'est légal. Tu peux en profiter pour contrôler via la
fonction header() ce que tu envoies dans les entêtes, à commencer par le
charset de la page (au fait, il n'est pas indiqué non plus avec la page
index.html, ce qui est mal ©).




OK, je m'occuperai de cela.

include.php :
----------------------------------------------------------------------
Date: Tue, 13 Apr 2010 21:30:47 GMT



<snip />

200 OK
----------------------------------------------------------------------

Note que tu dois avoir « Options +MultiViews » dans ta config, ce qui
permet de ne pas préciser l'extension (et donc d'en changer quand tu en
as envie sans changer d'URL). Tu peux vérifier par toi-même, les deux
liens suivants fonctionnent :




ouais mais je n'ai pas exactement la même version sur ma bécanne, mise
au point, et sur le serveur , la version de php diffère aussi :

> pour "index.php" :
> <?php

include 'http-headers.php';

> include 'header.html';
> calculer le menu et l'afficher
> include 'corps-index.html';
> include 'footer.html'
> ?>

pour "http-headers.php" :
<?php
header("Content-Type: text/html; charset=UTF-8");
... gestion de cache, etc. ...
?>



OK, pigé le truc.

> et par exemple pour ma page "cours.php", j'aurais :
> <?php
> include 'header.html';

include 'http-headers.php';

> calculer le menu et l'afficher
> include 'corps-cours.html';
> include 'footer.html'
> ?>

Oui.

> <snip />
>
> j'imagine que le coût à payer serait un ralentissement du chargement des
> pages ???

Non : si différence il y a, elle sera imperceptible. Du moins si en
passant par PHP tu ne perds pas des optimisations qui seraient faites
automatiquement avec le fichier statique (par exemple compression à la
volée, gestion du cache, ce genre de choses). Ces questions sont en
charte sur fr.comp.infosystemes.www.serveurs si jamais tu n'obtenais
pas de réponses suffisantes ici ou en cherchant par toi-même.



ok, il faut d'abord que je me renseigne quel est le serveur sur la
version "online", sur mon mac c'est Apache2, pour l'instant je n'y ai
pas fait grand chose, dans le fichier de conf, mise à part décommenter
la ligne chargeant le module php5.
--
« Après avoir serré la main de ton banquier,
n'oublie pas de recompter tes doigts »
(Coluche)
Olivier Miakinen
Le #22037621
Le 14/04/2010 01:10, Une Bévue a écrit :

Note que tu dois avoir « Options +MultiViews » dans ta config, ce qui
permet de ne pas préciser l'extension (et donc d'en changer quand tu en
as envie sans changer d'URL). Tu peux vérifier par toi-même, les deux
liens suivants fonctionnent :




ouais mais je n'ai pas exactement la même version sur ma bécanne, mise
au point, et sur le serveur , la version de php diffère aussi :



------------------------------------------------------------------------
Date: Wed, 14 Apr 2010 06:36:23 GMT
Server: Apache/1.3.42 (Unix) mod_log_bytes/1.2 mod_bwlimited/1.4
mod_auth_passthrough/1.8 FrontPage/5.0.2.2635 mod_ssl/2.8.31
OpenSSL/0.9.8e-fips-rhel5
Last-Modified: Mon, 05 Apr 2010 12:13:12 GMT
Etag: "15820a6-ff1-4bb9d3d8"
Accept-Ranges: bytes
Content-Length: 4081
Content-Type: text/html

200 OK
------------------------------------------------------------------------

C'est un Apache, donc tu dois pouvoir mettre un .htaccess à la racine du
site avec « Options +MultiViews » dedans, et aussi ce qu'il faut pour
préciser le charset, par exemple « AddDefaultCharset utf-8 ».

--
Olivier Miakinen
unbewusst.sein
Le #22037611
Olivier Miakinen
------------------------------------------------------------------------
Date: Wed, 14 Apr 2010 06:36:23 GMT
Server: Apache/1.3.42 (Unix) mod_log_bytes/1.2 mod_bwlimited/1.4
mod_auth_passthrough/1.8 FrontPage/5.0.2.2635 mod_ssl/2.8.31
OpenSSL/0.9.8e-fips-rhel5
Last-Modified: Mon, 05 Apr 2010 12:13:12 GMT
Etag: "15820a6-ff1-4bb9d3d8"
Accept-Ranges: bytes
Content-Length: 4081
Content-Type: text/html

200 OK
------------------------------------------------------------------------

C'est un Apache, donc tu dois pouvoir mettre un .htaccess à la racine du
site avec « Options +MultiViews » dedans, et aussi ce qu'il faut pour
préciser le charset, par exemple « AddDefaultCharset utf-8 ».



OK, merci beaucoup, ça me permettra d'avoir un fonctionnement "à
l'identique" sur ma bécanne et online.
--
« Si tous ceux qui n'ont rien n'en demandaient pas plus,
il serait bien facile de contenter tout le monde. »
(Coluche)
Publicité
Poster une réponse
Anonyme