Probleme de chemin

Probleme de chemin - PHP - Programmation

Marsh Posté le 18-03-2006 à 16:10:15    

Probléme de chemin
 
 
comment recupere t'on en PHP, le chemin qui amene à la racine d'un site. Car là mettre dans une variable globale à la main c'est pas top.
Merci

Reply

Marsh Posté le 18-03-2006 à 16:10:15   

Reply

Marsh Posté le 18-03-2006 à 16:46:12    

Au pire tu peux toujours le stocker dans un fichier de config dont tu fais l'inclusion dans tous tes script. Désolé de ne pas répondre exactement à ta question... Je sais que c'est possible mais c'est le genre de chose dont je me souvient jamais.

Reply

Marsh Posté le 19-03-2006 à 00:05:22    

$_SERVER['DOCUMENT_ROOT'] est ton ami je pense :)


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
Reply

Marsh Posté le 19-03-2006 à 03:22:03    

$_SERVER['DOCUMENT_ROOT'] => j'ai déjà testé mais il me renvoie l'adresse sur disque et non celle du http. Et sinon pour le fichier de config , j'ai déjà crée ma variable qui sera utilise comme chemin.
 
A par ceci, $_SERVER['DOCUMENT_ROOT'] pas d'autre moyen!!

Reply

Marsh Posté le 19-03-2006 à 03:59:46    

/ ???

Reply

Marsh Posté le 19-03-2006 à 07:29:16    

si tu expliquais ce que tu veux faire pour commencer :)


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
Reply

Marsh Posté le 19-03-2006 à 10:57:18    

Je vous explique l'arborescence du site en simplifier.
racine:http://s-0-08-20/PPD/PPD3
 
Racine  =>commun
          =>fonction
         => configs
         =>images
 
Mon fichier de configs étant celui qui ne bouge pas la variable globale se trouve dans celui ci.
Dans fonction, on trouve que des fonctions php qui vont servir pour tout le site. Et dans ces fonctions il y l'affichage d'image.
 
Mon probléme étant que quand j'appelle ma fonction dans une page php qui se trouve ds le repetoire commun qi j'ai mi ça ds ma ft ça s'affiche "../images/test.jpg" ms du coup si j'utilise la fonction dans direct à la racine ben ça s'affiche pu, et ces normal vu qu'il faudrai ça "images/test.jpg".
 
Donc mon probleme est de trouver un chemin relatif ou absolut pour que quand j'appelle mes fonctions je n'ais pu se pb là, et je ne pe pas faire deux fonction sinon site intenable.
Et j'ai teste avec $_SERVER['DOCUMENT_ROOT'], le probleme etant qu'il me donne une adresse disque dur (où est logé le site) du coup lors de l'execution les images ne sont pas trouvé vu qu'il faudrait l'adresse 'http://s-0-08-20/PPD/PPD3' et D:\programfiles/wamp5/www.
 
Bon je sais pas si je me suis bien expliqué mais voilà en gros mon probléme.


Message édité par thesharkbeach le 19-03-2006 à 10:58:17
Reply

Marsh Posté le 19-03-2006 à 12:43:15    

http://s-0-08-20/PPD/PPD3
ça t es obligé de le mettre dans un fichier de conf à part.
 
le compromis, c est de ne jamais faire de liens relatif qui commencent par ``..``, dans ce cas tu fait des liens absolus.

Reply

Marsh Posté le 19-03-2006 à 12:44:51    

alors / comme l'a dit nargy


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
Reply

Marsh Posté le 19-03-2006 à 14:50:26    

C'est bon j'ai résolu mon probléme, dans mon fichier de configuration j'ai mis ceci :
$temp=str_replace('\\','/',__FILE__); //Compatibilité unix/windows (\ et /)
$temp=dirname(str_replace($_SERVER["DOCUMENT_ROOT"],'',$temp)); //On ne garde que le chemin
 
$_GLOBALS['chemin_racine']=substr($temp,0,(strlen($temp)-6));//On enleve le repertoire config
 
$_GLOBALS['chemin_physique']=str_replace('config\conf.php','',__FILE__);
 
 
 
Par contre est ce normal qu'il faille que je redéclare mon tableau $_GLOBAL dans toutes mes fonctions? Comme ceci:  global $_GLOBALS;
 
Car sinon les $_GLOBAL ne sont pas reconnus.

Reply

Marsh Posté le 19-03-2006 à 14:50:26   

Reply

Marsh Posté le 19-03-2006 à 14:57:52    

oui, dans une fonction tu doit déclarer les variables globales que tu utilise.
global $chemin_racine;
global $chemin_physique;

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed