[PHP] chemin relatif / absolu

Résolu/Fermé
okuni Messages postés 1221 Date d'inscription jeudi 4 septembre 2008 Statut Membre Dernière intervention 2 janvier 2014 - 16 nov. 2008 à 00:06
 toto - 16 nov. 2008 à 17:45
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
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 mercredi 4 juin 2008 Statut Membre Dernière intervention 6 janvier 2010 19
16 nov. 2008 à 00:33
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 jeudi 13 novembre 2008 Statut Membre Dernière intervention 9 décembre 2009 18
16 nov. 2008 à 01:15
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 jeudi 4 septembre 2008 Statut Membre Dernière intervention 2 janvier 2014 126
16 nov. 2008 à 10:42
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
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 jeudi 4 septembre 2008 Statut Membre Dernière intervention 2 janvier 2014 126
16 nov. 2008 à 17:42
c'est vrai ^^

encore merci :)
1
De rien
En espérant t'avoir été utile.
1
okuni Messages postés 1221 Date d'inscription jeudi 4 septembre 2008 Statut Membre Dernière intervention 2 janvier 2014 126
16 nov. 2008 à 11:58
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 jeudi 4 septembre 2008 Statut Membre Dernière intervention 2 janvier 2014 126
16 nov. 2008 à 17:14
ok merci beacoup. Je vais tester ce soir.
mais $_SERVER['PHP_SELF'] sert à quoi alors?
-2