Ver Mensaje Individual
  #2 (permalink)  
Antiguo 25/09/2010, 16:03
Avatar de Triby
Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 9 meses
Puntos: 2237
Respuesta: Cómo hace megaupload y otros para limitarnos?

Tanto como explicarte... no te explicaste, pero creo haber entendido.

Lo que pasa es que megaupload (rapidshare, mediafire y un largo etc.) no usan un link directo para descarga de archivos, sino un sistema de descargas:

- Por URL recibes el identificador de archivo (lo obtienes en $_GET)
- Una vez que verificas que el archivo existe, buscas si en variables de sesion esta un indicador que te permita descargar o te haga esperar
- Si el indicador no existe, tendras que esperar y se creara la variable de sesion
- Si el indicador existe, entonces podras descargar el archivo

Seria algo como:
Código PHP:
Ver original
  1. $archivo = $_GET['archivo'];
  2. // Verifica en base de datos (si es que la usas) que exista el identificador
  3. // Usa file_exists() para asegurarte de que realmente esta disponible el archivo
  4.  
  5. if(!isset($_SESSION[$archivo]) || $_SESSION[$archivo] < time()) {
  6.     // Aqui creas el identificador, con duracion de, digamos, 1 hora
  7.     $_SESSION[$archivo] = time() + 3600;
  8.  
  9.     // Muestras el mensaje de que se debe esperar
  10.     // Con javascript (+AJAX) haces el conteo necesario y muestras el enlace final o redireccionas
  11. } else {
  12.     // Aqui permites que se descargue el archivo
  13.     // Envias los encabezados correspondientes para que salga en cuadro de dialogo de descarga
  14.     // Entregas el archivo usando readfile()
  15. }
__________________
- León, Guanajuato
- GV-Foto