Foros del Web » Programando para Internet » PHP »

downlodas php

Estas en el tema de downlodas php en el foro de PHP en Foros del Web. Hola amigos me podrian decir alguna referencia o algun script php para poner a mi sistemas de downloads que los usuarios puedan bajar archivos de ...
  #1 (permalink)  
Antiguo 07/02/2009, 14:10
(Desactivado)
 
Fecha de Ingreso: diciembre-2008
Mensajes: 421
Antigüedad: 15 años, 3 meses
Puntos: 0
downlodas php

Hola amigos me podrian decir alguna referencia o algun script php para poner a mi sistemas de downloads que los usuarios puedan bajar archivos de mi pagina
  #2 (permalink)  
Antiguo 07/02/2009, 14:22
 
Fecha de Ingreso: diciembre-2008
Mensajes: 454
Antigüedad: 15 años, 4 meses
Puntos: 2
Respuesta: downlodas php

mira te aconsejo que incluyas el siguiente script, lo cual fuerza a que el navegador descargue el archivo y no lo intente abrir como suel courrir con IE y archivos de excel o bien con los archivos pdf.

Código PHP:
// hago pasar la variable del archivo via url y la llamo con $_REQUEST['id']
$id "../archivo/".$_REQUEST['id'];
header("Content-type: application/octet-stream");
header("Content-Disposition: attachment; filename=\"$id\"\n");
$fp=fopen($id"r");
fpassthru($fp); 
  #3 (permalink)  
Antiguo 07/02/2009, 14:31
(Desactivado)
 
Fecha de Ingreso: diciembre-2008
Mensajes: 421
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: downlodas php

Muy buena idea gracias le diste justo al clavo
  #4 (permalink)  
Antiguo 07/02/2009, 14:33
 
Fecha de Ingreso: diciembre-2008
Mensajes: 454
Antigüedad: 15 años, 4 meses
Puntos: 2
Respuesta: downlodas php

no hay de que, en este foro estamos para ayudarnos, suerte
  #5 (permalink)  
Antiguo 07/02/2009, 16:50
okram
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: downlodas php

Eso de pasar nombres de archivos por url para descargar es arma de 3 (o más) filos.

Lo ideal es tener los nombres de archivos y sus ids guardados en una base de datos, y al momento de solicitar el archivo se pasa por la url sólo el id. Así evitas que alguien pueda descargar tus scripts php u otros archivos con información sensible.

  #6 (permalink)  
Antiguo 07/02/2009, 17:20
 
Fecha de Ingreso: diciembre-2008
Mensajes: 454
Antigüedad: 15 años, 4 meses
Puntos: 2
Respuesta: downlodas php

Gracias por tu comentario OKRAM, pero si te das cuenta majony nunca menciona bd, pero si te fijas bien, casi siempre uno identifica los campos auto_increment (primer campo) con el nombre id lo cual lo que indico es que estoy pasando el id via url.

Es decir es lo mismo que acabas de mencionar tu.

Pero muy buen aporte el tuyo
  #7 (permalink)  
Antiguo 07/02/2009, 17:25
okram
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: downlodas php

En tu script de ejemplo el id en realidad hace referencia al nombre real del archivo:

Código PHP:
$id "../archivo/".$_REQUEST['id']; 
No sé si esté usando una base de datos, por eso dije que sería lo ideal. Colocar así el script lo hace muy vulnerable.

Con un campo id no me refería exactamente aun campo numérico. Puedo hacer que mi campo id que sea el nombre del archivo "simplificado", sin caracteres especiales, y al descargarlo llamar a descargar.php?a=nombre.zip. Esto es muy últil si por ejemplo usamos urls amigables, en cuyo caso podríamos llamar a descargas/nombre.zip. Parecería que se está descargando directamente el archivo, pero en realidad le estoy pasando sólo un id, que sería "nombre" o "nombre.zip". Luego uso este id para buscar en la base de datos (u otro sistema de almacenamiento) y extraer el nombre y la ubicación real del archivo solicitado.

  #8 (permalink)  
Antiguo 07/02/2009, 17:30
 
Fecha de Ingreso: diciembre-2008
Mensajes: 454
Antigüedad: 15 años, 4 meses
Puntos: 2
Respuesta: downlodas php

Mira yo lo tengo de esta manera

1- lo selecciono de una lista de un formulario lo cual en el value lo identifico con el nombre o id relacionado.
2- lo recupero de la base de datos y le digo que segun el id me seleccione de la carpeta el nombre del archivo que esta guardado con ese id y que coincida con el guardado en la carpeta especifica

Estoy mal o deberia de cambiarlo por algo mejor??

Gracias por tu consejo, como siempre el foro es para mejorar entre nosotros

Saludos

P.D.: yo le puse id para que majony lo intepretara como un campo sacado de la bd, ya que nunca menciono ese tema. Ademas te pregunto me podrias ayudar con el tema propuesto anteriormente por mi??
  #9 (permalink)  
Antiguo 07/02/2009, 17:35
okram
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: downlodas php

Lo único que hay que tener en cuenta es evitar usar directamente los datos llegados por GET, POST o incluso COOKIE. Estos datos deben ser sólo referencias, especialmente los GET, ya que el usuario tiene total control sobre ellos. Yo tampoco nunca dí por entendido que majony tenía una base de datos, y no es necesario tampoco, ya que hay mil formas de filtrar los datos llegados por la URL.

Sólo como ejemplo, podríamos pasar el nombre real de X archivo por la URL, y en el script verificar que no existan barras /, o que el nombre recibido contenga sólo letras, números y puntos. Es otra forma "segura" de descargar archivos.

Como te dije, hay mil maneras, y una será mejor que la otra dependiendo del contexto en el que se ejecuta el script y de la utilidad que tenga el sistema.

  #10 (permalink)  
Antiguo 07/02/2009, 18:54
(Desactivado)
 
Fecha de Ingreso: diciembre-2008
Mensajes: 421
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: downlodas php

Uta muchachos no es para hacer peleas el foro che jajaja
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 03:10.