8796 sujets

Développement web côté serveur, CMS

Bonjour,

Je souhaite insérer un graphique .png avec une balise <IMG SRC=...> dans une page Web.
Mais le fichier n'est pas trouvé car il est créé par une autre appli et le répertoire n'est pas accessible par Apache.
Existe-t-il un moyen après avoir lu le fichier par fread d'interpréter le contenu et de l'insérer dans la page web?
Cela m'éviterait de créer un fichier temporaire que je devrais ensuite purger.

Merci d'avance.
Je ne vois pas très bien comment tu pourrais insérer une image qui n'existe pas.
Crée ton image d'abord, règle ensuite le problème du répertoire (problème que je ne comprends pas trop bien) et termine par l'affichage.
L'image existe. Apache ne la trouve pas car il interprète la balise <IMG SRC=...> et recherche le fichier en constituant le chemin à partir de la racine du site.
Mais l'image est créée sur une autre arborescence. Comme je ne peux pas changer l'appli qui génère l'image, je suis coincé.

Si je n'ai pas d'autre solution, je pense que je vais dupliquer l'image dans un repertoire accessible.
Peut-être une solution serait de copier le fichier dans un répertoire temporaire situé à l'intérieur de l'arborescence du site en la renommant si plusieurs images différentes doivent être affichées en même temps... ensuite, insérer dans la page une balise img dont la source est ce fichier nouvellement créé.


<?php 
$newImageName="imgtmp".timestamp().".png";
copy($imageOriginalPath,$serverImagesBasePath."/".$newImageName); 
echo('<img src="'.$siteImagesBasePath."/".$newImageName.'" />');
?>


Ne pas oublier de purger régulièrement ce répertoire temporaire ^^
Pourquoi ne pas creer un Alias ?
tu rendrait le dossier accessible pour ton site. tu modifie le vhost :

Alias /imgpng/ "/home/dossierdespng/reppng"
<Directory "/home/dossierdespng/reppng">
 Options Indexes FollowSymLinks MultiViews
                AllowOverride None
                Order allow,deny
                allow from all

</Directory>


tu adapte pour ton dossier
et ton image sera sur http://www.tonsite.tld/imgpng/image.png