Ver Mensaje Individual
  #1 (permalink)  
Antiguo 07/04/2011, 17:43
celex
 
Fecha de Ingreso: abril-2007
Mensajes: 48
Antigüedad: 17 años, 7 meses
Puntos: 0
Como evitar no descargar archivos

Buenas tardes a todos, tengo un archivo de php que extrae de la base de datos un listado, de los cuales en alguna columna lo llame descargar, lo que hace es ir a otro archivo: descargaxml.php y permite descargar, yo le envio un valor por el metodo GET y resulta, la cuestion es que uso sessiones para no permitir otros archivos que no pertenescan a determinado usuario.

Pero he notado que si me salgo por completo, es decir terminar la session y en el url escribo la ruta no permite descarga nada, pero si estoy adentro de la session faclmente puedo bajar otros archivos, es decir le cambio de nombre, ya que el nombre del archivo va en cosecutivo pero como lo indique cada archivo pertenece a un determinado usuario.

este es codigo, que me recomiendan agregar les agradesco:

Código PHP:
<?php

session_start
(); 
 if(!isset(
$_SESSION["login"])){ 
  
header("location:index.php");
 } else {

/*
...
me conecto a la base de datos
y por medio del $id armo el nombre del archivo
asi lo busco en la ruta y comienzo a descargar
folio="archivo.xml" por ejemplo archivo1.xml  archivo2.xml
*/ 


$id=$_GET['id'];
$folio=$id
$ruta 
"files/";
//$n_arch = $row[0].".xml";     
$n_arch $folio.".xml";     
     
    
    
header ("Content-Disposition: attachment; filename=".$n_arch." ");
     
header ("Content-Type: application/octet-stream");
     
header ("Content-Length: ".filesize($enlace));
     
readfile($enlace);         
   } 
}
?>
gracias