Hola gracias por tu respuesta. Mira este es el codigo sin la validacion de usuario que funciona perfectamente:
Código PHP:
<?php
require_once("../funciones/funciones_todas.php");
$datos_archivo=recuperar_datos_archivo_id($_GET["doc"]);
$ruta= "../".$datos_archivo['ruta'];
header ("Content-Type: ".$datos_archivo['tipo_archivo']."");
header ("Content-Length: ".filesize($ruta));
header ("Content-Disposition: attachment; filename=".$datos_archivo['nombre_archivo']."\n\n");
readfile($ruta);
?>
Y este es el codigo ya incluyendo que la session este iniciada y con el correspondiente location si no:
Código PHP:
<?php
session_start();
require_once("../funciones/funciones_todas.php");
if (isset($_SESSION['valid_user']))
{
$datos_archivo=recuperar_datos_archivo_id($_GET["doc"]);
$ruta= "../".$datos_archivo['ruta'];
header ("Content-Type: ".$datos_archivo['tipo_archivo']."");
header ("Content-Length: ".filesize($ruta));
header ("Content-Disposition: attachment; filename=".$datos_archivo['nombre_archivo']."\n\n");
readfile($ruta);
}
else
header("Location: ...);
?>
El problema viene con Intertet Explorer, que cuando doy al documento a descargar no identifica correctamente el nombre y escribe el del archivo. Si le doy a Abrir lo abre perfectamente, pero si le doy a Guardar ahi esta el problema.
He probado en Safari, Firefox, Opera, Google Chrome y todos lo Guardan perfectamente con el nombre del archivo, excepto IE que muestra lo siguiente:
Espero haber sido un poco mas claro.
He probado algunas cosas y el problema viene con el session_start que por supuesto no puedo quitar.
Muchas gracias y saludoss!