Foros del Web » Programando para Internet » PHP »

Evitar que un enlace sea descargado más de dos veces por la misma persona u otra

Estas en el tema de Evitar que un enlace sea descargado más de dos veces por la misma persona u otra en el foro de PHP en Foros del Web. Buenos días a todos, no se si esto sea un OT y si lo es desde ya me disculpo. Tengo un pequeño dilema y es ...
  #1 (permalink)  
Antiguo 25/01/2013, 10:04
 
Fecha de Ingreso: marzo-2011
Ubicación: Caracas
Mensajes: 140
Antigüedad: 11 años, 10 meses
Puntos: 1
Evitar que un enlace sea descargado más de dos veces por la misma persona u otra

Buenos días a todos, no se si esto sea un OT y si lo es desde ya me disculpo. Tengo un pequeño dilema y es que necesito bloquear un contenido una vez sea descargado por alguien. Les pongo un ejemplo:
- Tengo un cliente A que paga por un contenido X y a su correo se le envia un mensaje con una direccion generada a traves de Google Shortener API (no expiran nunca ) y el cliente puede descargarse su contenido tranquilamente

Ahora bien si ese cliente, inteligentemente , le pasa la URL generada a otro cliente digamos el B, entonces el B tambien podria descargarse el contenido y no deberia ser dado que el cliente B no pago

Lo que necesito, y no se hacer, es que al cliente A se le limite la cantidad de descargas del contenido a un valor X y de alguna forma bloquear ese contenido a otro cliente cualquiera. Alguien me da sugerencias?

Gracias y desde ya gracias por adelantado
__________________
Reynier Perez Mira
Skype: reynierpm
Site: http://www.reynierpm.com
  #2 (permalink)  
Antiguo 25/01/2013, 10:12
Avatar de fishdesign  
Fecha de Ingreso: abril-2011
Ubicación: Málaga
Mensajes: 389
Antigüedad: 11 años, 9 meses
Puntos: 95
Respuesta: Evitar que un enlace sea descargado más de dos veces por la misma persona

Tan solo tienes que controlar el hash que le mandes por url.

web.com/test.php?hash=41980

En la base de datos, añade estos hash (puedes generarlos de varias formas) junto con un tinyint con 0 y 1 para activo e inactivo.
Cuando el user visite la url, comprueba si está activo. De ser así, haces el proceso y posteriormente haces update y lo cambias a inactivo.
Si el usuario vuelve a entrar, ya estará en inactivo y por lo tanto no podrá seguir con el proceso (descarga de contenido o lo que sea)

También puedes borrarlo directamente (el hash) una vez que se haya completado un proceso (cuando vuelva a entrar, el hash ya no existiría), ya según necesites.
__________________
Web Designer.
Themes-Up!, próximamente
  #3 (permalink)  
Antiguo 25/01/2013, 10:20
 
Fecha de Ingreso: marzo-2011
Ubicación: Caracas
Mensajes: 140
Antigüedad: 11 años, 10 meses
Puntos: 1
Respuesta: Evitar que un enlace sea descargado más de dos veces por la misma persona

Gracias por la pronta respuesta fishdesign, tu sugerencia funciona para si el video fuera descargado por un solo usuario pero como son multiples usuarios no se si el marcar el registro con un FLAG sea la solucion. Las URL son generadas por el API de Google Shortener para encriptar de alguna forma la URL original de mi sitio
__________________
Reynier Perez Mira
Skype: reynierpm
Site: http://www.reynierpm.com
  #4 (permalink)  
Antiguo 25/01/2013, 10:50
Avatar de fishdesign  
Fecha de Ingreso: abril-2011
Ubicación: Málaga
Mensajes: 389
Antigüedad: 11 años, 9 meses
Puntos: 95
Respuesta: Evitar que un enlace sea descargado más de dos veces por la misma persona

Los URL Shortener son simples redirecciones. A la hora de la verdad, no va a cifrar nada.
Tienes muchas opciones; visualización con login, controles por ip, etc.

Podrías hacer algo como:
$hash = md5('semilla' + $ipUser);

Luego cuando mandes la Url con el hash haces la comprobación de que la ip y semilla del user correspondan al hash.
Puedes regenerar los hashes cada día (para los users de ip dinámica)
__________________
Web Designer.
Themes-Up!, próximamente
  #5 (permalink)  
Antiguo 25/01/2013, 11:06
 
Fecha de Ingreso: marzo-2011
Ubicación: Caracas
Mensajes: 140
Antigüedad: 11 años, 10 meses
Puntos: 1
Respuesta: Evitar que un enlace sea descargado más de dos veces por la misma persona

Bueno lo que no quiero es enviarle al cliente la URL de mi dominio por lo cual creo que para acortarla/encriptarla (este ultimo de algun modo) estoy usando el shortener. Si tienes una mejor sugerencia agradeceria me la dijeras. Por otro lado me pones un ejemplo mas claro de lo que tratas de explicarme con el hash()? Quizas un codigo que me haga visualizar lo que me tratas de explicar?

Saludos
__________________
Reynier Perez Mira
Skype: reynierpm
Site: http://www.reynierpm.com

Etiquetas: descargas, urls
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 17:00.