Foros del Web » Programando para Internet » PHP »

Forza descarga de archivo

Estas en el tema de Forza descarga de archivo en el foro de PHP en Foros del Web. Hola estuve buscando en distintos foros, por que encontre un codigo que debe forzar la descarga de algun documento, bueno lo he probado y no ...
  #1 (permalink)  
Antiguo 29/11/2010, 19:38
Avatar de tampon  
Fecha de Ingreso: julio-2009
Mensajes: 420
Antigüedad: 14 años, 9 meses
Puntos: 0
Pregunta Forza descarga de archivo

Hola estuve buscando en distintos foros, por que encontre un codigo que debe forzar la descarga de algun documento, bueno lo he probado y no me funciona, o me hace descargar el documento php o me descarga el archivo pero en blanco.

Alguein em puede decir donde esta el error? este es el codigo

descarga.php
Código PHP:
<?php
$ruta 
"documentos/";
$enlace $ruta."/".$id;
header ("Content-Disposition: attachment; filename=".$id."\n\n");
header ("Content-Type: application/octet-stream");
header ("Content-Length: ".filesize($enlace));
readfile($enlace);
?>
y asi pongo el link en la pagina:

Código HTML:
Ver original
  1. <a href="descarga.php?id=hoja.pdf">link</a>
  #2 (permalink)  
Antiguo 29/11/2010, 19:56
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: Forza descarga de archivo

se debe a que el código que conseguiste está pensado para que funcione con registers globals, funcionalidad depreciada en futuras versiones de php por motivos de seguridad.

lo único que tienes que hacer es especificar explícitamente el origen de id:
Código PHP:
Ver original
  1. <?php
  2. $ruta = "documentos/";
  3. $enlace = $ruta."/".$_GET['id']; //id a través de GET
  4. header ("Content-Disposition: attachment; filename=".$id."\n\n");
  5. header ("Content-Type: application/octet-stream");
  6. header ("Content-Length: ".filesize($enlace));
  7. readfile($enlace);
  8. ?>
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #3 (permalink)  
Antiguo 29/11/2010, 20:45
Avatar de tampon  
Fecha de Ingreso: julio-2009
Mensajes: 420
Antigüedad: 14 años, 9 meses
Puntos: 0
Hola gracias por la respuesta, mira no se si te entenfi bien , lo que tengo que hacer es:

Código PHP:
$id "www.laRuta.com/documentos"
??? por que agregue el metodo $_GET pero aun asi no me funciono, en el link me pidio guardarel archivo descarga.php

No me jala :( o alguna idea? gracias.

Última edición por tampon; 30/11/2010 a las 10:48

Etiquetas: descargas
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 01:33.