Foros del Web » Programando para Internet » PHP »

Mostrar opción de guardar o abrir archivo

Estas en el tema de Mostrar opción de guardar o abrir archivo en el foro de PHP en Foros del Web. Buenas, tengo unos archivos guardados en la BD. Lo que pasa es que si el archivo es un .txt o una imagen(.gif - .png - ...
  #1 (permalink)  
Antiguo 12/07/2010, 12:02
 
Fecha de Ingreso: noviembre-2009
Mensajes: 112
Antigüedad: 14 años, 5 meses
Puntos: 0
Mostrar opción de guardar o abrir archivo

Buenas, tengo unos archivos guardados en la BD. Lo que pasa es que si el archivo es un .txt o una imagen(.gif - .png - etc) me muestra el contenido del archivo en la ventana y no me da la opción de abrir o guardar en el disco duro, y para los otros tipos de archivo si me dal la opción o de abrir o de guardar.

Como hago para que me dé la opción de abrir o guardar independiente del tipo de archivo?

Gracias, adjunto el código por si algo:

header("Content-type: image/gif");

// Recuperamos la foto de la tabla
$nit_empresa = $_GET["nit_empresa"];
$id_pracespecifica = $_GET["id_pracespecifica"];
$id_pracgenerica = $_GET["id_pracgenerica"];

if($id_pracgenerica == -1)
{
$sql = "SELECT archivo, mime
FROM evidencia
WHERE PracEspecifica_id = '$id_pracespecifica' AND Empresa_nit = '$nit_empresa'";
# Conexión a la base de datos
$link = mysql_connect("localhost","root","") or die(mysql_error($link));;
mysql_select_db("autodiagnostico", $link) or die(mysql_error($link));
$conn = mysql_query($sql, $link) or die(mysql_error($link));
$datos = mysql_fetch_array($conn);

// La imagen
$imagen = $datos[0];

// El mime type de la imagen
$mime = $datos[1];

// Gracias a esta cabecera, podemos ver la imagen
// que acabamos de recuperar del campo blob
header("Content-Type: $mime");

if($imagen == 0)
{
echo("No se subió la evidencia");
}
else
{
echo $imagen;
}

}


Graciassss
  #2 (permalink)  
Antiguo 12/07/2010, 12:44
Avatar de Gustavo72  
Fecha de Ingreso: abril-2008
Ubicación: -32.956045,-60.661355
Mensajes: 197
Antigüedad: 16 años
Puntos: 9
Respuesta: Mostrar opción de guardar o abrir archivo

Creo que después de:
Código PHP:
header('Content-type: image/gif'); 
deberías agregar:
Código PHP:
header('Content-Disposition: attachment; filename="archivo.gif"'); 
Donde "archivo.gif" es el nombre que verá el usuario al bajarlo.
__________________
Saludos.

Gustavo
  #3 (permalink)  
Antiguo 12/07/2010, 13:36
 
Fecha de Ingreso: noviembre-2009
Mensajes: 112
Antigüedad: 14 años, 5 meses
Puntos: 0
Respuesta: Mostrar opción de guardar o abrir archivo

Excelente Gustavo72, graciaaass


Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:28.