8800 sujets

Développement web côté serveur, CMS

Bonjours une question de débutant Smiley rolleyes
Je voudrais savoir si il existe une fonction en php pour cibler le root de mon serveur
je m'explique:
j'ai donc un canevas que j'utilise dans toute les pages de mon site
dans ce cannevas j'ai un menu avec des liens vers mes différentes pages
lorsque je reste au premier niveau pas de problème pour la nav
mais lorsque je descend dans des dossiers enfants du premier niveau la nav plante car elle ne trouve plus les pages du premier niveau Smiley bawling
donc ma question:
existe il une fonction qui permet de cibler le root du serveur pour que mon menu puisse de n'importe quel niveau enfant (sous dossier) faire référence au root Smiley murf
j'ai tenter ça mais ça ne remonte pas dans les dossier parent
<a href="<?php  $_SERVER['PHP_SELF'] ?>index.php">test</a>; 

ça non plus
<a href="<?php  $_SERVER['DOCUMENT_ROOT'] ?>index.php">test</a>; 

Modifié par leo2v (13 Dec 2011 - 09:22)
bon bien j'ai opter pour la bonne vieille méthode du chemin absolu snif..
pensée du jours -> ça marche mais c'est trash <-
Modérateur
Bonjour,

Tu peux utiliser du simple HTML :

Cible index.php dans le dossier parent (remonte d'un seul niveau)

<a href="../index.php">Remonte d'un niveau</a>


Cible index.php dans le dossier parent du dossier parent (remonte de deux niveaux)

<a href="../../index.php">Remonte de deux niveaux</a>


Cible index.php à la racine du site

<a href="/index.php">Racine du site</a>


Si j'ai bien compris ton questionnement, c'est le troisième exemple qui devrait t'intéresser.
leo2v a écrit :
bon bien j'ai opter pour la bonne vieille méthode du chemin absolu snif..
pensée du jours -&gt; ça marche mais c'est trash &lt;-


Le chemin absolu c'est au contraire ce qu'il y a de plus propre.

Dans mon fichier index.php (le seul point d'entrée de mes sites) je déclare 2 constantes comme ceci :


define('SITE_URL', str_replace(basename($_SERVER['SCRIPT_NAME']), '', $_SERVER['SCRIPT_NAME']));
define('SITE_DIR', realpath(dirname(__FILE__)) . '/');
il manque un "echo" et un ";" en PHP

<a href="<?php  echo $_SERVER['DOCUMENT_ROOT']; ?>/index.php">test</a>; 

Modifié par skap64 (14 Dec 2011 - 17:06)