Foros del Web » Programando para Internet » PHP »

Tengo mis archivos en una carpeta el nombre de ese archivo lo guarde con el id en

Estas en el tema de Tengo mis archivos en una carpeta el nombre de ese archivo lo guarde con el id en en el foro de PHP en Foros del Web. Tengo mis archivos en una carpeta y solo el nombre de ese archivo guardado con el id en mi db, como hago para descargar ese ...
  #1 (permalink)  
Antiguo 17/02/2012, 11:54
 
Fecha de Ingreso: noviembre-2010
Mensajes: 13
Antigüedad: 13 años, 4 meses
Puntos: 0
Tengo mis archivos en una carpeta el nombre de ese archivo lo guarde con el id en

Tengo mis archivos en una carpeta y solo el nombre de ese archivo guardado con el id en mi db, como hago para descargar ese archivo de ese id?

<td style="background-color:black; color:white;">ARCHIVOS</td>

y este me muestra cada archivo de cada id

<td><?php echo $fila['fichero'];?></td>
  #2 (permalink)  
Antiguo 17/02/2012, 12:06
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: Tengo mis archivos en una carpeta el nombre de ese archivo lo guarde con e

te refieres a un force-download?
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #3 (permalink)  
Antiguo 17/02/2012, 12:13
 
Fecha de Ingreso: noviembre-2010
Mensajes: 13
Antigüedad: 13 años, 4 meses
Puntos: 0
Respuesta: Tengo mis archivos en una carpeta el nombre de ese archivo lo guarde con e

si, basicamente tengo esto: un archivo subido por cada usuario, y tendría que poder descargarse. El nombre del archivo lo saca de la base. y archivo esta guardado en el directorio uploads.

NOMBRE ARCHIVO ADJUNTO

juan perez uploads/Jellyfish.jpg
MARIA PAZ uploads/Penguins.jpg
  #4 (permalink)  
Antiguo 17/02/2012, 12:18
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: Tengo mis archivos en una carpeta el nombre de ese archivo lo guarde con e

entonces necesitas un force-download al tratarse de imágenes, para evitar que las muestre directamente el navegador y aparezca el dialogo "guardar como"

lo tienes en el manual de PHP:

(el primer ejemplo: Example #1 Forcing a download using readfile()) http://php.net/manual/en/function.readfile.php
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #5 (permalink)  
Antiguo 17/02/2012, 12:29
 
Fecha de Ingreso: noviembre-2010
Mensajes: 13
Antigüedad: 13 años, 4 meses
Puntos: 0
Respuesta: Tengo mis archivos en una carpeta el nombre de ese archivo lo guarde con e

Gracias, lo pruebo. Iguar yo puse imagenes pero en realidad serian pdf y word. De todos modos creo que esta perfecto lo que me mendaste.
  #6 (permalink)  
Antiguo 17/02/2012, 12:44
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: Tengo mis archivos en una carpeta el nombre de ese archivo lo guarde con e

en el caso de PDF es muy útil porque algunos clientes tienen lectores embebidos, y así te aseguras que los descarguen, lo puedes usar con cualquier archivo, pero asegúrate de filtrar bien las extensiones, porque si le permites descargar los *.php pueden obtener tu código
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #7 (permalink)  
Antiguo 17/02/2012, 12:54
 
Fecha de Ingreso: septiembre-2011
Mensajes: 219
Antigüedad: 12 años, 7 meses
Puntos: 31
Respuesta: Tengo mis archivos en una carpeta el nombre de ese archivo lo guarde con e

Cita:
Iniciado por vanvan_17bis Ver Mensaje
si, basicamente tengo esto: un archivo subido por cada usuario, y tendría que poder descargarse. El nombre del archivo lo saca de la base. y archivo esta guardado en el directorio uploads.

NOMBRE ARCHIVO ADJUNTO

juan perez uploads/Jellyfish.jpg
MARIA PAZ uploads/Penguins.jpg
Te recomendaria que renombres los archivos antes de guardarlo para evitar que se sobreescriban los archivos. Te puede ocurrir que subas dos archivos del mismo nombre y no tira ningun warning, directamente los sobreescribe.

Cambiale el nombre en el proceso de carga, de paso le sacas espacios, acentos y caracteres raros, y finalmente haces la guarda del archivo + la guarda en la db con el nuevo nombre.

Te vas a evitar dolores de cabeza.
  #8 (permalink)  
Antiguo 17/02/2012, 13:30
 
Fecha de Ingreso: noviembre-2010
Mensajes: 13
Antigüedad: 13 años, 4 meses
Puntos: 0
Respuesta: Tengo mis archivos en una carpeta el nombre de ese archivo lo guarde con e

Che muchas gracias, de todos modos no logro hacerlo.

<td>ARCHIVO ADJUNTO</td>
<?php // CAPTURO LOS DATOS...
while($fila=mysql_fetch_array($res)){
?>

<td><?php echo $fila['fichero'];?></td>

y me trae...


NOMBRE ARCHIVO ADJUNTO

juan perez uploads/Jellyfish.pdf
MARIA PAZ uploads/Penguins.doc


Pero no logro incorporar esto....


<?php
$fichero = 'mono.gif';

if (file_exists($fichero)) {
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename='.basename($fichero));
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: ' . filesize($fichero));
ob_clean();
flush();
readfile($fichero);
exit;
}
?>
  #9 (permalink)  
Antiguo 17/02/2012, 13:51
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: Tengo mis archivos en una carpeta el nombre de ese archivo lo guarde con e

eso es porque necesitas colocarlo como intermediario, es decir, que envíes un código por GET y en el force download consultes y recuperes el archivo:

links:
<a href="forcedown.php?id=1" >juan perez uploads/Jellyfish.pdf</a>
<a href="forcedown.php?id=2" >MARIA PAZ uploads/Penguins.doc</a>
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #10 (permalink)  
Antiguo 17/02/2012, 14:23
 
Fecha de Ingreso: noviembre-2010
Mensajes: 13
Antigüedad: 13 años, 4 meses
Puntos: 0
Respuesta: Tengo mis archivos en una carpeta el nombre de ese archivo lo guarde con e

Muchas graciassssss!!!!!!!!!!!!!!!!!!!!!!!!!!

Etiquetas: nombre, carpetas
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 09:01.