Je me demandais s'il y avait un moyen de faire un chemin relatif vers le dossier principal (où se trouve l'index.php) à partir de chaque fichier qui doit être inclus ou demandé par AJAX.
Je veux combiner AJAX et PHP include pour que la page se charge d'abord avec PHP, puis pour pouvoir rafraîchir des parties de la page avec AJAX, mais les fichiers sont les mêmes et se trouvent dans des sous-dossiers.
J'ai des problèmes avec le chemin d'accès et bien que je puisse définir un chemin d'accès absolu, je dois le modifier à chaque fois que le serveur change. Je veux un chemin relatif à l'endroit où se trouve mon projet, mais pas DOCUMENT_ROOT, car celui-ci ne fonctionne pas avec les alias. (ou savez-vous comment le faire fonctionner avec les alias ? )
Merci !
EDIT* Voici à quoi ressemble la structure de mon répertoire :
[main_dir]/index.php - le fichier d'index principal
[main_dir]/phpinc - les fichiers php include - qui ne fonctionnent qu'avec include (pas d'appel AJAX sur eux)
[main_dir]/modules - les modules sont des parties de la page, qui peuvent être incluses avec PHP ou appelées par AJAX depuis n'importe où (peu importe, elles seront chargées comme un fichier HTML individuel, de sorte que les chemins en PHP sont relatifs à l'endroit où le module est physiquement situé.
Lorsque vous les incluez dans PHP, ils prennent normalement le chemin [main_dir] (parce que index.php les a inclus).
Mon problème est donc le suivant : à partir des fichiers du module, je veux inclure certains fichiers dans le dossier phpinc, mais il pourrait s'agir de ../phpinc/file.php ou de phpinc/file.php .
Existe-t-il une méthode plus élégante que celle qui consiste à mettre un
if (is_dir("phpinc")) {
$inc_path = "phpinc";
} else if (is_dir("../phpinc")) {
$inc_path = "../phpinc";
}
au début de chaque module ?