probleme d'affichage d'image en php

Roum
Invité n'ayant pas de compte PHPfrance

05 oct. 2009, 10:49

Bonjour à tous
J'imagine que ça doit êre un problème classique, il doit y avoir une astuce mais je n'ai pas trouver d'informations à ce sujet ou je n'ai pas mis les bons mots clefs...bref ça me donne l'occasion de tester le forum de phpfrance!
Donc j'ai un soucis quand j'appelle des images par le php
alors moi je fais comme ça:
<html>
<body>
<img src="b_bleu.gif" alt="BLEUHTML"/> //// image s'affiche correctement
<?php
	$path = realpath('b_bleu.gif'); 
	echo '<img scr="b_bleu.gif" alt="bleuPHP" /> ',"\n"; /// image s'affiche pas, seule le ALT s'affiche
	echo '<img scr="'.$path.'" alt="bleuPHP" /> ',"\n";  /// j essaye avec l'adresse complète (c'est dire mon désarrois) mais ça ne marche pas quand même
	
	echo 'REAL='.$path.'<br/>',"\n";
?>
</body>
</html>
Quelqu'un peut m'aider?

Merci

Mammouth du PHP | 985 Messages

05 oct. 2009, 11:18

Salut,
realpath() -> retourne le chemin interne sur le serveur.
Le chemin de l'image sera inscrit dans le code Html pour indiquer au navigateur ou aller chercher et charger cette image.
Donc si tu donnes le chemin interne -> il ne comprendra pas et ne pourra donc pas la charger.
Le chemin interne peut-être utile pour les fichiers include() ou require() par exemple...

Il faut donc donner au navigateur le chemin externe:
- soit l'adresse complète (exemple: http://www.ton-serveur.com/image.gif)
- soit un raccourcis (si l'image est dans le même répertoire, exemple: ./image.gif).

Donc si l'image se trouve dans le même répertoire:
<html>
<body>
<?php
echo '<img src="./b_bleu.gif" alt="bleuPHP" /> <br />';
?>
</body>
</html>
Ps:
Ne pas utiliser de \n non plus, pour la même raison -> le navigateur ne comprend que le code html et donc en html le retour à la ligne est:
<br />
Modifié en dernier par Dr@ke le 05 oct. 2009, 15:50, modifié 1 fois.
Face à la roche, le ruisseau l'emporte toujours, non pas par la force mais par la persévérance.

Roum
Invité n'ayant pas de compte PHPfrance

05 oct. 2009, 12:31

désolé pour le doublon de message

oui, bon je simplifie donc à fond:
<html>
<body>
<img src="b_bleu.gif" alt="BLEUHTML"/>
<?php
	echo '<img scr="b_bleu.gif" alt="bleuPHP"/> ';
?>
</body>
</html>
quand j affiche la source:
<html>
<body>
<img src="b_bleu.gif" alt="BLEUHTML"/>
<img scr="b_bleu.gif" alt="bleuPHP"/> </body>
</html>
sauf que je vois que la premiere image
c'est pas fou ça?
Vous n'auriez pas une idée?

Roum

ViPHP
ViPHP | 2287 Messages

05 oct. 2009, 12:34

Regarde attentivement le code source que tu as posté, la solution va te frapper d'un seul coup... #-o

(petit indice : une faute de typo)
if(!@work()){ Nespresso(); } else { what(); }
______________________________

Mammouth du PHP | 686 Messages

05 oct. 2009, 12:38

Regarde attentivement le code source que tu as posté, la solution va te frapper d'un seul coup... #-o

(petit indice : une faute de typo)
Moi j'ai trouvé ! :lol:

Mammouth du PHP | 985 Messages

05 oct. 2009, 15:55

Le pire c'est que j'avais reproduis la faute en copiant/collant une partie de ton code pour corriger d'autres petites choses...
-> c'est corrigé
Face à la roche, le ruisseau l'emporte toujours, non pas par la force mais par la persévérance.

Eléphant du PHP | 199 Messages

06 oct. 2009, 13:06

Juste pour ne pas mourir idiot c'est parce que les sources étaient les mêmes?

ViPHP
ViPHP | 2287 Messages

06 oct. 2009, 13:38

Allez, pour Superpilou (et ceux qui comme lui n'auraient pas vu la typo), une coloration syntaxique faite maison (merci de m'excuser si mes choix de couleurs sont moches, chacun ses goûts hein :D )
<html>
<body>
<img src="b_bleu.gif" alt="BLEUHTML"/>
<img scr="b_bleu.gif" alt="bleuPHP"/> </body>
</html>
if(!@work()){ Nespresso(); } else { what(); }
______________________________

Eléphant du PHP | 199 Messages

06 oct. 2009, 16:04

Pfff :x je suis nul merci encore