Foros del Web » Programando para Internet » PHP »

download archivos

Estas en el tema de download archivos en el foro de PHP en Foros del Web. Hola Compañeros! Como puedo hacer para implementar en mis sitios links para bajar archivos, es decir que el hacer click en algun link o imagen ...
  #1 (permalink)  
Antiguo 25/10/2006, 18:49
Avatar de x7ian  
Fecha de Ingreso: octubre-2006
Mensajes: 18
Antigüedad: 17 años, 6 meses
Puntos: 0
download archivos

Hola Compañeros!
Como puedo hacer para implementar en mis sitios links para bajar archivos, es decir que el hacer click en algun link o imagen o boton, que aparezca la ventana esa donde se indica en donde sequiere guardar el archivo y que se descargue el archivo desde el servidor.
Yo uso php, pero igual no se si tiene que ver con los scripts del lado del server o si es mas simple que eso.
Grax!
  #2 (permalink)  
Antiguo 25/10/2006, 19:55
Avatar de isaacluz  
Fecha de Ingreso: marzo-2005
Mensajes: 180
Antigüedad: 19 años, 1 mes
Puntos: 0
Crea un php llamado descargas.php o como quieras y pon esto en el

Código PHP:
if ($Download){
  if (
file_exists($Download)){
      
$download_size filesize($Download);
      
$filename basename($Download);
      
header("Content-Type: application/octet-stream");
      
header("Content-Disposition: attachment; filename=$filename");
      
header("Accept-Ranges: bytes");
      
header("Content-Length: $download_size");
      @
readfile($Download);
      die;
  }else{
      
$Mensaje "No se ha encontrado el archivo solicitado!!!";
  };

lo unico que tienes que hacer es mandarle la variable $Download con la ruta relativa al documento descargas.php y ya, te genera la descarga automática
  #3 (permalink)  
Antiguo 25/10/2006, 21:33
 
Fecha de Ingreso: julio-2005
Ubicación: Guatemala
Mensajes: 165
Antigüedad: 18 años, 8 meses
Puntos: 0
Facil

Creo que esta un tanto complicado... con un simple link se resolveria, o al menos asi lo he hecho siempre yo.

Código PHP:
<a href='documento.ext'><img src='carpeta/imagen'></a
__________________
Guatemala - Guatemala
  #4 (permalink)  
Antiguo 25/10/2006, 22:39
Avatar de x7ian  
Fecha de Ingreso: octubre-2006
Mensajes: 18
Antigüedad: 17 años, 6 meses
Puntos: 0
Si... pues fijate q ya intente eso, pero ponele que si el archivo que queres q baje es una imagen, en vez de bajar el archivo, te muestra la imagen.

voy a revisar la otra tecnica.
Gracias amigos.
  #5 (permalink)  
Antiguo 25/10/2006, 22:57
Avatar de x7ian  
Fecha de Ingreso: octubre-2006
Mensajes: 18
Antigüedad: 17 años, 6 meses
Puntos: 0
Gracias!

Si. Asi como lo propone isaacluz funciona re bien. Gracias otra vez!
  #6 (permalink)  
Antiguo 25/10/2006, 23:53
Avatar de MoDoRrO  
Fecha de Ingreso: septiembre-2005
Ubicación: Php+Flash+AS
Mensajes: 1.072
Antigüedad: 18 años, 7 meses
Puntos: 12
La primera es la mejor, la segunda se me complika mucho (trabajas mas y obtienes lo mismo) Te recomiendo la Primera, la segunda solo es trashed
  #7 (permalink)  
Antiguo 26/10/2006, 05:42
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Cita:
Iniciado por bilkarm3 Ver Mensaje
Creo que esta un tanto complicado... con un simple link se resolveria, o al menos asi lo he hecho siempre yo.

Código PHP:
<a href='documento.ext'><img src='carpeta/imagen'></a
De esta forma te ves obligado a colocar tus archivos en el "Document root" de tu servidor (HTTP) .. es decir, los archivos quedan expuestos en forma directa por una llamada por http:// .. simple. (OK, Ok .. podrías proteger ese directorio con un .htacces para sólo permitir accesos desde las páginas de tu própio sitio y no link's directos .. un "hot link" protección o algo así).

Así no puedes implementar ningún tipo de seguridad "básica" para que no accedan directamente al archivo . .pues, se trata de que los archivos los coloques en el servidor -fuera- del "document root" (ejemplo: si tenemos un típico: "public_html" donde se nos apuntan el "document root", sería cosa de colocar los archivos por encima de este directorio ..).

Bajo esta estructura .. sería "PHP" quien lea el archivo de su ubicación física (vía readfile() por ejemplo) y entregarla al buffer de salida vía cabeceras HTTP (con header() y las que correspondan).

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #8 (permalink)  
Antiguo 12/06/2009, 11:12
 
Fecha de Ingreso: junio-2009
Mensajes: 1
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: download archivos

hola, tengo una pregunta de este codigo, lo utilice y me funciono perfectamente, lo que pasa es que no me pregunta la hubicacion en la cual lo quiero guardar, siempre lo pone en el escritorio, me podrian ayudar con esto gracias
  #9 (permalink)  
Antiguo 12/06/2009, 11:46
Avatar de MoDoRrO  
Fecha de Ingreso: septiembre-2005
Ubicación: Php+Flash+AS
Mensajes: 1.072
Antigüedad: 18 años, 7 meses
Puntos: 12
Respuesta: download archivos

mmmm, eso nunca se podra chavito29, tu eliges donde guardarlo
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 15:06.