Ver Mensaje Individual
  #13 (permalink)  
Antiguo 08/07/2008, 09:36
Avatar de caricatos
caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Respuesta: ¿Imposible hacer que solo usuarios registrados puedan descargar?

Hola:

La verdad es que creo que estoy "muy verde" en este tema, pero me parece que lo mejor es no mostrar nunca la url real de la descarga, o sea tener esa url y por ejemplo un id asociado; y si fuera necesario el mimetype del fichero que se quiera bajar, o incluso guardar el propio archivo para descargar en un campo blob de la base de datos (no lo había puesto antes, pero pienso que puede ser útil), y la línea real sea algo así: descarga.php?id=XXX... a la vez una variable de sesión que la página descarga consulte para ofrecer el fichero...

<?
session_start();
if ($_SESSION["logueado"]) {
$id = $_GET["id"];
list($url, $mime) = busca_url($id);
header("Content-type: $mime");
$datos = file_get_contents($url);
echo $datos;
}
else
devolver_basura();
?>

Es solo la estructura, y yo lo implemento en alguna rutina para mostrar imágenes, y creo que funciona... supongo que si se sabe la url será difícil evitar que cualquiera descargue el fichero en cuestión, y con esas líneas en ningún momento se muestra la url...

Espero que si hay alguien que sepa más que yo lo corrobore.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo