Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Equivalent de pour une image sous cgi-bin

4 réponses
Avatar
BlinKol
Bonjour.

Le script ci-après affiche une image jpeg provenant de l'espace cgi-bin,
inacessible d'un simple <img src="/cgi-bin/test.jpg>, dans le
navigateur.

Mais comment faire pour que cette image apparaisse dans le cadre d'une
page html complète (c.a.d, à une place précise de type cellule d'un
tableau, div, incorporé à un texte tel que le ferait un tag <img>, etc).

#!c:/perl/bin/Perl.exe
use strict;
my $img = "test.jpg"; # same dir as current script
print "Content-Type: image/jpeg\n\n";
open FILE, $img or die "Couldn't open $img : $!";
binmode FILE;
binmode STDOUT;
print while read FILE, $_, 1024;
close FILE;

Comment feriez-vous ?

4 réponses

Avatar
Nicolas George
BlinKol wrote in message :
Mais comment faire pour que cette image apparaisse dans le cadre d'une
page html complète (c.a.d, à une place précise de type cellule d'un
tableau, div, incorporé à un texte tel que le ferait un tag <img>, etc).


Eh bien il faut produire la page, avec une balise img vers l'image : il y
aura deux CGI différents.

On peut éventuellement mettre l'image directement dans la page avec un lien
en data:, mais ça a des inconvénients.

Avatar
BlinKol
In article <dq5jmh$25bu$, nicolas$
s.org says...
BlinKol wrote in message :
Mais comment faire pour que cette image apparaisse dans le cadre d'une
page html complète (c.a.d, à une place précise de type cellule d'un
tableau, div, incorporé à un texte tel que le ferait un tag <img>, etc).


Eh bien il faut produire la page, avec une balise img vers l'image : il y
aura deux CGI différents.

On peut éventuellement mettre l'image directement dans la page avec un lien
en data:, mais ça a des inconvénients.



Merci !

Bon, effectivement, à ce point des réponses obtenues sur
comp.lang.perl.misc et en tatonnant, je suis arrivé à produire un truc
comme :

#!c:/perl/bin/Perl.exe
print "Content-type: text/htmlnn";
print "<HTML><BODY>";
print "<img src='/cgi-bin/test/loadimg.pl?img=test.jpg' border=0>";
print "</BODY></HTML>";
exit 0;

Avec donc deux script : test.pl et loadimg.pl.

Mais, je préfèrerai n'avoir d'un script. Je suppose qu'un appel interne
à un sub comme <img src='loadimg($img)' border=0> n'est pas correct.

Alors, il me reste effectivement la solution de mettre le contenu de
loadimg.pl dans test.pl (en tant que sub donc), mais à l'appeler comme
ça : <img src='/cgi-bin/test/test.pl?loadimg=test.jpg' border=0> ; avec
évidemment une prise en charge du paramètre loadimg passé en url pour
diriger vers le sub loadimg().

Qu'en pensez-vous ? D'autres idées ? Une simplification possible ?


Avatar
Thierry
C'est comme ça que je fais aussi, j'ai pas trouvé mieux.

"BlinKol" a écrit dans le message de news:

In article <dq5jmh$25bu$, nicolas$
s.org says...
BlinKol wrote in message :
Mais comment faire pour que cette image apparaisse dans le cadre d'une
page html complète (c.a.d, à une place précise de type cellule d'un
tableau, div, incorporé à un texte tel que le ferait un tag <img>,
etc).


Eh bien il faut produire la page, avec une balise img vers l'image : il y
aura deux CGI différents.

On peut éventuellement mettre l'image directement dans la page avec un
lien
en data:, mais ça a des inconvénients.



Merci !

Bon, effectivement, à ce point des réponses obtenues sur
comp.lang.perl.misc et en tatonnant, je suis arrivé à produire un truc
comme :

#!c:/perl/bin/Perl.exe
print "Content-type: text/htmlnn";
print "<HTML><BODY>";
print "<img src='/cgi-bin/test/loadimg.pl?img=test.jpg' border=0>";
print "</BODY></HTML>";
exit 0;

Avec donc deux script : test.pl et loadimg.pl.

Mais, je préfèrerai n'avoir d'un script. Je suppose qu'un appel interne
à un sub comme <img src='loadimg($img)' border=0> n'est pas correct.

Alors, il me reste effectivement la solution de mettre le contenu de
loadimg.pl dans test.pl (en tant que sub donc), mais à l'appeler comme
ça : <img src='/cgi-bin/test/test.pl?loadimg=test.jpg' border=0> ; avec
évidemment une prise en charge du paramètre loadimg passé en url pour
diriger vers le sub loadimg().

Qu'en pensez-vous ? D'autres idées ? Une simplification possible ?




Avatar
BlinKol
In article <43c699c5$0$18332$, "Thierry" <->
says...
C'est comme ça que je fais aussi, j'ai pas trouvé mieux.



Un peu lourdingue, mais adopté :-)