[PHP] chemin relatif / absolu

Résolu
okuni Messages postés 1221 Date d'inscription   Statut Membre Dernière intervention   -  
 toto -
Bonjour,

J'aimerais savoir s'il est possible de transformer un lien absolu en relatif.
par exemple pour mon menu, j'aimerais enlever le "http://www.blizer.net" et ne laisser que "../" si nécessaire.

pour le moment, j'utilise les liens absolu pour mon menu car il doit être accessible partout sur mon site.
est t'il possible de mettre par exemple :
<?php
echo '<a href="'.fonction php.'/dossier1/page1.php">Lien 1</a>


remplacer fonction php par un code qui me permettra donc d'aller sur la bonne page en étant n'importe où sur mon site.

merci.

10 réponses

toto
 
$_SERVER['PHP_SELF'] :
Le nom du fichier du script en cours d'exécution, par rapport à la racine web. Par exemple, $_SERVER['PHP_SELF'] dans le script situé à l'adresse http://www.monsite.com/test.php/foo.bar sera /test.php/foo.bar . La constante __FILE__ contient le chemin complet ainsi que le nom du fichier (i.e. inclut) courant.

J'ai copié-collé ça depuis le manuel de référence du PHP. Faudrait aller y jeter un coup d'oeil de temps en temps, ça fait partie des choses fondamentales du PHP.
http://www.php.net/manual/fr/reserved.variables.server.php
4
toto
 
pour pouvoir travailler en local sans chaque fois modifier les liens.
Pour ça, tu as _SERVER["HTTP_HOST"] qui te donne la racine de ton site. Tu n'as plus qu'à faire
'http://' . _SERVER["HTTP_HOST"]. '/home.php?page=accueil'
etc...
3
X-Fan Messages postés 805 Date d'inscription   Statut Membre Dernière intervention   24
 
Le but du php étant de permettre les trucs dynamique je dirais: oui c'est possible. Le hic c'est que je pige rien à ton explication alors dur dur de t'aider.

Peux-tu retenter l'explication (et s'il faut, met les chemins complets des fichiers pour illustrer ton problème) et on verra.
1
Chupachups23 Messages postés 73 Date d'inscription   Statut Membre Dernière intervention   18
 
Tu peu mettre des variables dans un lien oui , après ton histoire d'aller sur n'importe quel page a partir d'une autre ,tu peu mettre toutes pages dans un même dossier...

 echo '<a href="index.php?page='.$tavariable.'">' . $tavariable . '</a> ';

1

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
okuni Messages postés 1221 Date d'inscription   Statut Membre Dernière intervention   126
 
ok je vais donner un exemple concret
non Chupachups23, ce n'est pas ce que je veux dire.

j'ai mon menu :
<li><a href="http://www.blizer.net/home.php?page=accueil">Accueil</a></li>
<li><a href="http://www.blizer.net/series/index.php?page=serie">Les séries</a></li>
<li><a href="http://www.blizer.net/chat/index.php?page=chat">Shoutbox</a></li>
<li><a href="http://www.blizer.net/livre/index.php?page=livre">Livre d\'or</a></li>

vu que le menu est accessible partout, je suis obligé de mettre un lien absolu.
ce que j'aimerais c'est enlever le "http://www.blizer.net".
Pour avoir un chamin relatif dynamique.
donc si je suis sur le root, mon menu sera :
<li><a href="home.php?page=accueil">Accueil</a></li>
<li><a href="series/index.php?page=serie">Les séries</a></li>
<li><a href="chat/index.php?page=chat">Shoutbox</a></li>
<li><a href="livre/index.php?page=livre">Livre d'or</a></li>

si je suis par exemple sur le livre d'or, le menu sera :
<li><a href="../home.php?page=accueil">Accueil</a></li>
<li><a href="../../series/index.php?page=serie">Les séries</a></li>
<li><a href="../chat/index.php?page=chat">Shoutbox</a></li>
<li><a href="../livre/index.php?page=livre">Livre d'or</a></li>


donc comment faire pour avoir un lien relatif dynamique?

J'espère que j'ai bien expmiqué maintenant.
1
toto
 
Bonjour

C'est sûrement faisable en te basant sur $_SERVER['PHP_SELF']. Par contre l'intérêt m'échappe totalement. Par curiosité, pourquoi ne veux-tu pas de liens absolus ?
1
okuni Messages postés 1221 Date d'inscription   Statut Membre Dernière intervention   126
 
c'est vrai ^^

encore merci :)
1
toto
 
De rien
En espérant t'avoir été utile.
1
okuni Messages postés 1221 Date d'inscription   Statut Membre Dernière intervention   126
 
pour pouvoir travailler en local sans chaque fois modifier les liens.
cela fonctionne comment $_SERVER['PHP_SELF'] ?
-1
okuni Messages postés 1221 Date d'inscription   Statut Membre Dernière intervention   126
 
ok merci beacoup. Je vais tester ce soir.
mais $_SERVER['PHP_SELF'] sert à quoi alors?
-2