[PHP] *Resolu * Problème de chemin avec les "include"

*Resolu * Problème de chemin avec les "include" [PHP] - PHP - Programmation

Marsh Posté le 23-03-2006 à 15:28:14    

Bonjour,
 
Je suis en train de développer un site en ce moment.
Je rencontre quelques soucis avec les includes et le site. Je vous explique :
J'ai développé quelques modules de manière à pouvoir les réutiliser plus tard, notamment un petit script de news à ce adresse :
xxx
 
Comme vous le voyez, tout fonctionne correctement
Le site que je développe se trouve quelques répertoires plus bas :
 
xxx
 
En fait, j'effectue un include dans ma page "index.php" qui se trouve à la racine comme tel : include("modules/News/index.php" );
Mais comme vous le voyez, plus rien ne marche. J'appel le même script mais plus rien ne fonctionne.
Le chemin utiliser dans le script de news se base sur la page appelante (l'index de base) et non sur la page appelée (l'index du module de news) comme je le souhaiterais.
 
Cela fait plusieurs fois que je rencontre ce problème que j'aimerais comprendre/résoudre et éviter d'utiliser des iframe comme je le faisait pour le contourner avant.
 
Si quelqu'un passait par là et pouvait m'expliquer/solutionner mon problème.
 
Merci beaucoup


Message édité par NoiBe49 le 23-03-2006 à 16:40:35
Reply

Marsh Posté le 23-03-2006 à 15:28:14   

Reply

Marsh Posté le 23-03-2006 à 15:57:04    

Quand php rencontre une des fonctions "include", "require" , "include_once" ou "require_once", alors il insére dynamiquement le contenu du fichier à l'endroit de la fonction.
Par conséquence, le répertoire de travail sera toujours celui du script appelé même si le code est situé dans un des fichiers inclus. C'est la même chôse dans (quasiment?) tous les autres languages qui permettent une inclusion dynamique.
 
Si tu veux que les pages incluses fonctionnent, alors il faut soit modifier le répertoire courant à chaque fois que tu passes d'un code inclus au code principal ou à un autre code inclus et inversement ou mieux que tu fasses du code qui n'espére pas bêtement que le répertoire courant ne soit pas toujours exactement le même.


Message édité par omega2 le 23-03-2006 à 15:57:32
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed