0

Como eu faço um arquivo .php que faz download de imagens. Ex: download.php?foto=01

criado por Eduardo Firmino Leitão em 02/05/2004 1:15pm
Nenhuma descrição foi enviada.

Lista de Respostas:

0
03/05/2004 10:36pm
(~12 anos atrás)
Alessander Thomaz respondeu:
Faça um arquivo que chame IncImg.php com o conteúdo abaixo.

<?

if (! $sName) {
$sName = $sImage;
}

$sImagePath = $sDir . $sImage ;

$aImageInfo = getimagesize($sImagePath);
if ($aImageInfo[2] == 1) {
$sImageType = "gif" ;
} elseif ($aImageInfo[2] == 2) {
$sImageType = "jpeg" ;
} elseif ($aImageInfo[2] == 3) {
$sImageType = "png" ;
} else {
header( "HTTP/1.0 404 Not Found" );
exit ;
}

header("Content-type: image/$sImageType");
header("Content-Disposition: inline; filename=$sName");

@readfile($sImagePath);
?>

Para mostrar a imagem faça assim
<img src="IncImg.php?sImage=Foto.jpg&sDir=upload">

Na prática o que está acontecendo é que o arquivo está abrindo o arquivo e enviando ao navegador. Se quiser forçar o download, existe um header que pode procurar que é force alguma coisa.

Boa sorte.

0
07/07/2004 8:28am
(~12 anos atrás)
Paulo Moreira respondeu:
Tenho o seguinte script que força o download de um arquivo pdf, mas está dando um erro. Quando clico em abrir arquivo ou salva no disco, o arquivo vem em branco, com 0 k. O que está dando de errado?

<?php
$file = "downloads/planb.pdf";

header("Pragma: public");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");

header("Content-Type: application/force-download");
header( "Content-Disposition: attachment; filename=".basename($file));

header( "Content-Description: File Transfer");
@readfile($file);
header("location= index.html");


?>

Nova Resposta:

(Você pode usar tags como <b>, <i> ou <code>. URLs serão convertidas para links automaticamente.)