Lien d'objet

Fermé
Sinistrus Messages postés 1017 Date d'inscription mercredi 12 décembre 2007 Statut Membre Dernière intervention 6 juin 2023 - Modifié par Sinistrus le 2/03/2011 à 19:12
Sinistrus Messages postés 1017 Date d'inscription mercredi 12 décembre 2007 Statut Membre Dernière intervention 6 juin 2023 - 3 mars 2011 à 11:39
Bonjour,

J'ai besoin de votre aide et de la méthode la plus simple pour appeler des images dans un site web. Je sais, <img... mais ce que je voudrais c'est que j'ai un site en php dont plusieurs pages, header.php, footer.php, colonne.php et supposons la page contact.php

J'appel les pages dont j'ai besoin avec des includes, ainsi :
<?php include("http://monsite.com/styles/NomDuStyle/themes/header.php"); ?>
, mais une fois que je le met en ligne, les images de mon header ne s'affichent pas.
Ce que je ne comprends pas, dans mon header j'ai mis l'image comme ceci :
<img src="images/logo.png" width="146" height="147" border="0" />

Mon header ce trouves dans le dossier template et ma page contact à la racine.
Ce qui me donne :
Racine       > styles > NomDuStyle > themes     > images 
---------------------------------------------------------- 
contact.php  >        >            > header.php > logo.png

Je suis donc obligé de mettre comme lien
<img src="http://monsite.com/styles/NomDuStyle/themes/images/logo.png" width="146" height="147" border="0" />


Existe-t-il une méthode pour éviter cette longue ligne et raccourcir le chemin svp ?

Ces deux options d'include et d'affichage d'image me tue et j'ai vraiment besoin d'une solution...

Merci de me répondre

4 réponses

totofrancois Messages postés 398 Date d'inscription jeudi 19 novembre 2009 Statut Membre Dernière intervention 2 août 2013 44
2 mars 2011 à 23:59
tu as essayer de mettre dans le header :

<img src="./styles/NomDuStyle/theme/images/logo.png" width="146" height="147" border="0" />

et dans contact.php :
( . : la ou tu es
.. :le répertoire du dessus)

<?php include("./styles/NomDuStyle/themes/header.php"); ?>
0
Sinistrus Messages postés 1017 Date d'inscription mercredi 12 décembre 2007 Statut Membre Dernière intervention 6 juin 2023 17
3 mars 2011 à 10:35
Bonjour,

Non, mon header.php contient ceci :
<img src="images/logo.png" width="146" height="147" border="0" />
parce qu'il est déjà dans le dossier themes.

et ma page index.php ceci :
<?php include("../styles/NomDuStyle/themes/header.php"); ?>


si je suis la logique du code que tu m'as donné,
<img src="./styles/NomDuStyle/theme/images/logo.png" width="146" height="147" border="0" /> 
sans test, j'imagine qu'il peut afficher l'image, mais lorsque je prendrai un autre fichier dans un dossier, supposons contact/index.php... il me fera la même erreur...
0
totofrancois Messages postés 398 Date d'inscription jeudi 19 novembre 2009 Statut Membre Dernière intervention 2 août 2013 44
3 mars 2011 à 10:40
a mon avis il y a un truc que tu n'a pas compris

PHP ne gère pas les images !! les images sont inclus dans ta page html générées par ton navigateur

donc tu ouvre ton navigateur et tu fais afficher la source et la tu regarde les chemins générés

<img src="./styles/NomDuStyle/theme/images/logo.png" width="146" height="147" border="0" />

ne fonctionnera que pour une page HTML généré à la racine (même si le header.php est dans un fond de placard)
0
Sinistrus Messages postés 1017 Date d'inscription mercredi 12 décembre 2007 Statut Membre Dernière intervention 6 juin 2023 17
3 mars 2011 à 11:39
Donc si je dois afficher une image depuis le header.php, je dois mettre le lien depuis http:// et non pas ../ !
C'est ce que j'avais fais et ça fonctionnais, mais je me demandais si c'était juste.

A ma place tu ferais quoi ?
0