Page 1 sur 1

revenir a la racine du site.

Posté : 30 avr. 2008, 22:13
par fabrice88250
bonjour,
existe t'il une commande qui permet de revenir a la racine de son site internet afin dévité de mettre par exemple ../../../../../../../images/partenaires/logopeugeot.jpg ?

Posté : 01 mai 2008, 01:11
par Anémone
Bonsoir,

Est-ce que ceci répondrait à ta question:
define("RACINE_SITE","../../../../../../../");
?

Posté : 01 mai 2008, 09:03
par fabrice88250
euhh non, car si ce chemin est stocké dans une base de données et que je souhaite afficher cette image sur differentes pages de mon site le chemin ne serra plus le bon.

Exemple :
si j'ai une page qui se trouve dans un repertoire
"pages/partenaires/mapages.php"

et si je veus afficher cette meme image dans une autre page qui est dans un autre repertoire
"admin/clients/partenaires/ville/mapage.php

Posté : 01 mai 2008, 09:03
par caroube
Qui doit revenir à la racine du site ? La partie PHP ou la partie HTML.
La partie PHP est basée sur l'arborescence du disque dur du serveur et la partie HTML sur l'arborescence de l'URL. Tu peux donc travailler en absolu
$abs_path=$_SERVER["DOCUMENT_ROOT"]."/images/partenaires/logopeugeot.jpg";
echo $abs_path."<br />";
$abs_url=$_SERVER["SERVER_NAME"]."/images/partenaires/logopeugeot.jpg";
echo $abs_url."<br />";
Attention, selon les serveurs $_SERVER["DOCUMENT_ROOT"] et $_SERVER["SERVER_NAME"] peuvent ou non être terminés par un /. Donc, quand tu concatènes, vérifie s'il faut ou non rajouter un devant "images" (il y a des cas où le fait d'avoir // ne gêne pas PHP et d'autres cas où ça le gêne).

Posté : 01 mai 2008, 09:05
par caroube
Maintenant, si c'est juste afficher une image dans la partie HTML, tu peux aussi faire

Code : Tout sélectionner

<img src="/images/partenaires/logopeugeot.jpg">

Posté : 01 mai 2008, 09:12
par fabrice88250
non non pour ce qui est d'afficher une image sa irra :D

j'ai trouvé une autre solution qui fonctionne

Code : Tout sélectionner

// ici je récupere juste le nom de mon image $uploadlogo = basename($_FILES['logo']['name']); // ici je donne le chemin ou serra enregistré mon image $uploaddir = '../../images/partenaires/'; // ici j'additionne le chemin et mon nom d'image $uploadfile = $uploaddir . basename($_FILES['logo']['name']);
de cette façon dans ma base de données je stock juste $uploadlogo, mon image s'upload bien dans mon répertoire sur mon serveur avec $uploaddir et $uploaddir

j'éspere que sa pourra aider du monde car sa peut paraitre simple mais quand on sait pas comment faire ....