Ver Mensaje Individual
  #3 (permalink)  
Antiguo 21/05/2009, 04:47
bysv
 
Fecha de Ingreso: febrero-2008
Mensajes: 74
Antigüedad: 16 años, 2 meses
Puntos: 0
Respuesta: Problema al descargar archivos y session_start

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!