[PHP] chemin relatif / absolu [Résolu/Fermé]

Signaler
Messages postés
1221
Date d'inscription
jeudi 4 septembre 2008
Statut
Membre
Dernière intervention
2 janvier 2014
-
 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

$_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
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 57036 internautes nous ont dit merci ce mois-ci

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...
Messages postés
816
Date d'inscription
mercredi 4 juin 2008
Statut
Membre
Dernière intervention
1 octobre 2010
18
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.
Messages postés
73
Date d'inscription
jeudi 13 novembre 2008
Statut
Membre
Dernière intervention
9 décembre 2009
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> ';

Messages postés
1221
Date d'inscription
jeudi 4 septembre 2008
Statut
Membre
Dernière intervention
2 janvier 2014
121
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.
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 ?
Messages postés
1221
Date d'inscription
jeudi 4 septembre 2008
Statut
Membre
Dernière intervention
2 janvier 2014
121
c'est vrai ^^

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