Forzar descarga de imagen con php
Buenos días a todos,
Tengo el siguiente código php para forzar la descarga de imágenes en lugar de visualizarlas.
<?php
// verificar archivo
if (!isset($_GET['file']) || empty($_GET['file'])) {
exit();
}
// obtener archivo
$root = "images/";
$file = basename($_GET['file']);
$path = $root.$file;
$type = '';
if (is_file($path)) {
$size = filesize($path);
if (function_exists('mime_content_type')) {
$type = mime_content_type($path);
} else if (function_exists('finfo_file')) {
$info = finfo_open(FILEINFO_MIME);
$type = finfo_file($info, $path);
finfo_close($info);
}
if ($type == '') {
$type = "application/force-download";
}
header("Content-Type: $type");
header("Content-Disposition: attachment; filename=\"$file\"");
header("Content-Transfer-Encoding: binary");
header("Content-Length: " . $size);
// descargar achivo
readfile($path);
} else {
die("File not exist !!");
}
?>
el archivo lo nombre download.php y el link para descargar dichas imágenes, sería el siguiente: /download.php?file=nombre_de_archivo.jpg
Pues bien, el problema es que en lugar de descargarme el archivo de imagen dado, me descarga directamente el archivo php "download.php".
¿alguien podría echarme una mano? por favor.
Muchas gracias de antemano.