[Cascavel-pm] enviar figuras para download com CGI

Rafael Szarblewski rafasz em ibestvip.com.br
Sexta Junho 3 04:34:46 PDT 2005


------------------------------

Message: 2
Date: Mon, 30 May 2005 10:42:35 -0300
From: "Flavio S. Glock" <fglock em pucrs.br>
Subject: Re: [Cascavel-pm] Baixar imagem diretamente
To: Cascavel Perl Mongers <cascavel-pm em pm.org>
Message-ID: <429B184B.5090905 em pucrs.br>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed

Rafael Szarblewski wrote:
> Pessoal,
>
>   Estou tentando fazer aquelas paradas de baixar um arquivo diretamente
> ao invés de abrir no browser. Já tentei fazer uma jogada com o
> Content-type, colocando application/octet-stream mas não funcionou, no
> IE imprime a imagem e no Mozilla abre a caixa de diálogo de download mas
> ele baixa o corpo do script.
>
>   Ah, isso é para baixar imagens.
>
>   Alguém saberia como resolver essa situação?

Você precisa usar o header "Content-disposition".

------------------
#!/usr/bin/perl

my $file = "x.jpg";

print "Content-type: application/octet-stream\n";
print "Content-disposition: attachment; filename=$file\n";
print "\n";
open( FILE, $file );
binmode FILE;
print <FILE>;
------------------

Além disso, o script precisa estar registrado como "cgi" para ser
executado - senão, será tratado como texto pelo Apache.

- Flavio S. Glock

Olá Flávio S. Glock,

  Muito obrigado por responder a minha dúvida, mas ainda não consegui, pois
não sei como registrar o script como cgi, o que precisa ser feito? Ele já
tem extensão ".cgi", é isso que precisa? Somente a extensão?

Obrigado mais uma vez!

Abraços,

Rafael Szarblewski
Perl Developer

------------------------------

E ae Pessoal blz?

  Eu fiz o exemplo baseado no que o Flávio S. Glock me passou, está
funcionando direitinho o único problema agora é como mostrar o nome do
arquivo que está sendo baixado, no Mozilla e no Konqueror aparece certinho o
nome do arquivo, mas no IE aparece o nome do cgi, mas sem extensão
pré-definida, por exemplo: "download" e era para aparecer 0007594ora.jpg por
exemplo.

Desde já agradeço enormemente pela ajuda!

Rafael Szarblewski
Perl Developer



Mais detalhes sobre a lista de discussão Cascavel-pm