A force de chercher, j'ai trouvé un manière plus agréable d'intégrer une page html ( ou autre dans une autre ) grâce aux fonctions "include" et "require" de php.
Seulement voila, la page que j'intègre se trouve dans un répertoire différent de celui de la page principale affichée. De ce fait, la page intégrée utilise le répertoire parent comme référence, et cela engendre des erreurs de liens.
Comment puis-je lui forcer la main en lui indiquant l'arborescence exacte où elle se trouve ?
# Re: intégrer une page HTML ( suite )
Posté par Pascal Terjan (site web personnel) . Évalué à 1.
[^] # Re: intégrer une page HTML ( suite )
Posté par gerald dumas . Évalué à 1.
J'avais une ligne du type <?php require "doc_en_ligne/index.html"; ?>
J'ai transformé tout ca en :
>?php
if (chdir("doc_en_ligne"))
{
require "index.html";
}
?>
et la page doc_en_ligne/index.html est bien chargée. J'ai donc pensé que le pointeur de dossier etait sur "doc_en_ligne" et que toutes les pages appelées par index.html, qui sont normalement appelées dans le répertoire courant, fonctionneraient. Et pourtant non ?
Je continue à chercher.
Merci pour ta réponse.
[^] # Re: intégrer une page HTML ( suite )
Posté par Pascal Terjan (site web personnel) . Évalué à 1.
Une solution serait d'indiquer dans le header que BASE est /tonfichier.php/ et après adans le php de regarder la page demandée mais il faut faire attention que les gens ne demandent pas une url ou un fichier genre ../../../../etc/passwd ...
[^] # Re: intégrer une page HTML ( suite )
Posté par Ju. . Évalué à 1.
Tu veux integrer "index.html" du dossier doc_en_ligne ?
require "/doc_en_ligne/index.html";
Pour peu que le dossier doc_en_ligne soit bien à la racine du site.
En fait de la meme facon que pour le lien SRC du tag IMG, le plus simle est de donner le lien absolu, et pas relatif à la page d'appel.
Bon arretez moi si je dis une grosse betise, il est un peu tard, mais je ne vois pas la difficulté... ;-/
[^] # Re: intégrer une page HTML ( suite )
Posté par gerald dumas . Évalué à 0.
Encore merci pour tous vos commentaires éclairés.
# Re: intégrer une page HTML ( suite )
Posté par David Sporn (site web personnel) . Évalué à 1.
- Pour tous les scripts d'une même "application", les pages maîtres sont au même niveau, et les includes sont dans un sous-repertoire "includes".
-Pour les librairies mutualisables, je stocke dans une variable le chemin relatif vers le répertoire contenant les librairies, et donc pour l'inclusion je concatène ce chemin de base avec le nom du fichier à inclure.
Note : le chemin passé en paramètre de l'include est toujours relatif au script maître
[^] # Re: intégrer une page HTML ( suite )
Posté par mcben . Évalué à 1.
ex:
define ("_PATH_", "/pages/html/"); /* Avec les _, ca le fait encore plus ;-) */
echo _PATH_;
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.