Tutoriels - Progweb - PHP fichier source



Les pseudo frames (écrit par Guillaume )

Include et Require ou la méthode des pseudos-frames.

Introduction

Les frames sont une invention des normes HTML crées pour alléger les pages d'un site web, les éléments identiques sur chaque pages étant chargés une seule fois. Maintenant, la vitesse des modems ayant augmenté et l'apparition du CSS permettant de stocker la présentation d'une page à l'extérieur (feuille de style externe), on peut se passer de cette technique disgracieuse qui pose des problèmes de maintenance, de réfèrencement …
Mais il existe toujours des éléments communs à chaque page, comme un menu, des copyrights ou tous simplement les entêtes de pages. Recopier le code sur chacune des pages fait de la mise à jour un vrai cauchemard.

C'est pour cela qu'il existe le PHP et ses magnifiques fonctions de base, include et require.

Différence entre include et require.

La différence entre include et require est maigre, et sur les nouvelle versions de PHP, elle est encore plus minime. La fonction include est executée lors de l'exécution du script, alors que require est utilisée lors du la vérification syntaxique du script ( pré-exécution ).


Exemple

<?php
if (1 == 2){
include('page.php') ; /* L'inclusion ne se fera pas, la condition if n'est pas vérifiée. */
require('page.php'); /* L'inclusion est faite, avant l'exécution du programme, sans tenir compte du code du programme et du if */
}
?>

En pratique, on utilisera include() pour des pages de présentations, du texte et require() pour inclure du code PHP.

http://www.php.net/manual/fr/function.require.php
http://www.php.net/manual/fr/function.include.php


La méthode des pseudos-frames

La méthode que je présente n'est pas celle utilisée couramment sur la plus part des sites web dynamique, mais elle a des avantages mais pas ses inconvenant.
La méthode consiste a stocker dans des fichiers séparés le code qui ne change jamais: un menu, une barre de titre ...
Pas exemple, voici ce que l'on peut trouver dans nos deux fichiers :

header.php

<html>
<head>
<title>Ici le titre</title>
< !---quelques entêtes //-->
</head>
<body>
footer.php

</body>
</html>



Votre page maintenant ressemblera à ceci :

< ?php
include('header.php') ;

// vous écrivez votre code php ici

include('footer.php') ;
?>

Ce qui renverra au navigateur ceci :

<html>
<head>
<title>Ici le titre</title>
< !---quelques entêtes //-->
</head>
<body>
le code de votre page
</body>
</html>
</body>
</html>


Les fichiers header et footer peut contenir du code PHP, et donc présenter des informations dynamiques, tout comme le reste du site (le titre peut changer pour chaque page)

Cette technique est très simple et a d'énormes avantages sur la technique classique (c'est a dire de recevoir une variable $page depuis l'adresse d'inclure la page demandée avec un switch).

Ma méthode Technique classique
Pas de variable Une variables à passer à chaque page, à évaluer ...(je chipote).
Sûreté absolue, on ne se fie pas aux variables envoyées par le visiteur Problèmes de sécurité éventuels en fonction du code.
Simple a maintenir, vous voulez une nouvelle page, vous la créez. Un code dur a maintenir, a chaque nouvelle page, il faut modifier le traitement de la variable.
Seulement 2 fonctions pour afficher sa page. Temps d'exécution plus lent ( je chipote encore, mais c'est toujours ça )
Référencement sans problème Certains moteurs de recherche supportent mal les adresses avec des url GET
Meilleur lisibilité du nom de page, livre.php index.php?page=toto&zone=tutu&etape=292 n'est pas très compréhensible pour le visiteur

 

Postez vos commentaires sur le forum.






 



Tous droits réservés 2003 Jérémie Cook