Foros del Web » Programando para Internet » PHP »

Que opinan acerca de esta idea? Un link de descarga temporal.

Estas en el tema de Que opinan acerca de esta idea? Un link de descarga temporal. en el foro de PHP en Foros del Web. Buenas estaba buscando la manera de como hacer un link temporal pero no encontré mucha información, así que se me ocurrió programar uno yo mismo, ...
  #1 (permalink)  
Antiguo 21/01/2011, 16:52
 
Fecha de Ingreso: agosto-2010
Ubicación: Oakland california
Mensajes: 393
Antigüedad: 13 años, 8 meses
Puntos: 3
Que opinan acerca de esta idea? Un link de descarga temporal.

Buenas estaba buscando la manera de como hacer un link temporal pero no encontré mucha información, así que se me ocurrió programar uno yo mismo, tal ves se rían pero bueno, no se me ocurrió algo mejor por el momento, si alguien tiene una mejor idea, pues agradecería que la compartiera, o si se les ocurre algo para mejorar el código pues igual se agradece. Bueno la idea es la siguiente: cuando alguien hace click en un botón para comprar un articulo descargable, paypal da la opción de redireccionar a una pagina que tu especifiques después de haber completado el pago, entonces en esa url meto tres fechas juntas cifradas: la del día de la compra y la de los 3 días siguientes, las fechas date(Ymd) las cifro con base64 pero aparte antes de ponerlas en la url le remplazo algunos caracteres a las fechas ya cifradas con str_replace y aparte quito el (=) pues esto podría ocasionar alguna falla entonces cuando ya se completa el pago se reridecciona a la pagina donde se va a descargar el producto y agarro las fechas por método get le aplico la función mysql_real_escape_string le cambio los caracteres que anteriormente habíamos cambiado con str_replace la descifro con base64 y hago las comparaciones necesarias para saber si las fechas que trae la url coinciden con la fecha actual y pues si no entonces no se muestra el link, que opinan?

Última edición por Ojete; 21/01/2011 a las 16:58
  #2 (permalink)  
Antiguo 21/01/2011, 16:59
Avatar de inyaka  
Fecha de Ingreso: junio-2006
Mensajes: 67
Antigüedad: 17 años, 9 meses
Puntos: 3
Respuesta: Que opinan acerca de esta idea? Un link de descarga temporal.

cuando vuelvas a tener una idea:
usa puntos seguidos, puntos apartes y comas.
abrevia, luego de 1 linea sin información interesante se cierra la pestaña

si tu idea es en codigo y son menos de 8 lineas (10 maximo) postea el codigo, quizas te comunicas mejor a traves de código ^^
  #3 (permalink)  
Antiguo 21/01/2011, 17:01
 
Fecha de Ingreso: agosto-2010
Ubicación: Oakland california
Mensajes: 393
Antigüedad: 13 años, 8 meses
Puntos: 3
Respuesta: Que opinan acerca de esta idea? Un link de descarga temporal.

Gracias inyaka, tomare en cuenta lo que dices para la proxima...
  #4 (permalink)  
Antiguo 21/01/2011, 17:04
 
Fecha de Ingreso: agosto-2010
Ubicación: Oakland california
Mensajes: 393
Antigüedad: 13 años, 8 meses
Puntos: 3
Respuesta: Que opinan acerca de esta idea? Un link de descarga temporal.

Esta mejor asi?

Buenas, estaba buscando la manera de como hacer un link temporal pero no encontré mucha información, así que se me ocurrió programar uno yo mismo, tal ves se rían pero bueno, no se me ocurrió algo mejor por el momento, si alguien tiene una mejor idea pues agradecería que la compartiera, o si se les ocurre algo para mejorar el código pues igual se agradece. Bueno, la idea es la siguiente; cuando alguien hace click en un botón para comprar un articulo descargable, paypal da la opción de redireccionar a una pagina que tu especifiques para después de haber completado el pago, entonces en esa url meto tres fechas juntas cifradas, la del día de la compra y la de los 3 días siguientes, las fechas date(Ymd) las cifro con base64, pero aparte antes de ponerlas en la url le remplazo algunos caracteres a las fechas ya cifradas con str_replace y aparte quito el (=) pues esto podría ocasionar alguna falla, entonces cuando ya se completa el pago se reridecciona a la pagina donde se va a descargar el producto, agarro las fechas por método get, le aplico la función mysql_real_escape_string, le cambio los caracteres que anteriormente habíamos cambiado con str_replace, la descifro con base64 y hago las comparaciones necesarias para saber si las fechas que trae la url coinciden con la fecha actual, y pues si no entonces no se muestra el link, que opinan
  #5 (permalink)  
Antiguo 21/01/2011, 17:06
Avatar de inyaka  
Fecha de Ingreso: junio-2006
Mensajes: 67
Antigüedad: 17 años, 9 meses
Puntos: 3
Respuesta: Que opinan acerca de esta idea? Un link de descarga temporal.

Cita:
Iniciado por Ojete Ver Mensaje
Gracias inyaka, tomare en cuenta lo que dices para la proxima...
resume esa idea ahora, que no entendí absolutamente nada.

en la vida real abreviar te ayudara mucho :P
  #6 (permalink)  
Antiguo 21/01/2011, 17:15
 
Fecha de Ingreso: agosto-2010
Ubicación: Oakland california
Mensajes: 393
Antigüedad: 13 años, 8 meses
Puntos: 3
Respuesta: Que opinan acerca de esta idea? Un link de descarga temporal.

Cita:
Iniciado por inyaka Ver Mensaje
resume esa idea ahora, que no entendí absolutamente nada.

en la vida real abreviar te ayudara mucho :P
te entiendo pero me resulta algo dificil abreviar o resumir esto pues no se muy bien como explicarlo, mejor pongo el codigo para ver si se entiende mejor...



Esto es en la pagina en donde se hace click en el boton:
Código PHP:
Ver original
  1. $fa = date("Ymd");
  2. $day1 = strtotime('+1 days');
  3. $d1= date('Ymd', $day1);
  4. $day2 = strtotime('+2 days');
  5. $d2 =date('Ymd', $day2);
  6. $day3 = strtotime('+3 days');
  7. $d3 =date('Ymd', $day3);
  8.  
  9. $fS = $fa.$d1.$d2.$d3;
  10.  
  11. $fS =  base64_encode($fS);
  12. $fS = str_replace("=","",  $fS);
  13. $fS = str_replace("M","S", $fS);
  14. $fS = str_replace("w","B", $fS);
  15. $fS = str_replace("x","k", $fS);
  16. $fS = str_replace("0","c", $fS);
  17. $fS = str_replace("j","h", $fS);


y esta seria la pagina despues de completar el pago:
Código PHP:
Ver original
  1. $fd = date("Ymd");  
  2. $d1 = $_GET[afdvandfvadfv];
  3.  
  4. $d1 = str_replace("S","M", $d1);
  5. $d1 = str_replace("B","w", $d1);
  6. $d1 = str_replace("k","x", $d1);
  7. $d1 = str_replace("c","0", $d1);
  8. $d1 = str_replace("h","j", $d1);
  9. //$d1 = str_replace("_","=", $a1);
  10. $d1 = base64_decode($d1);
  11.  
  12. $diac=substr($d1, 0, 8);
  13.  
  14. $dia1=substr($d1, 8, 8);
  15.  
  16. $dia2=substr($d1, 16, 8);
  17.  
  18.  
  19.  
  20. $dia3=substr($d1, 24, 8);
  21.  
  22.  
  23. if      ($fd == $fa){$V=TRUE;}
  24. elseif  ($fd == $diac){$V=TRUE;}
  25. elseif  ($fd == $dia1){$V=TRUE;}
  26. elseif  ($fd == $dia2){$V=TRUE;}
  27. elseif  ($fd == $dia3){$V=TRUE;}
  28.  
  29. if ($V==TRUE)  { // el link estaria disponible
  #7 (permalink)  
Antiguo 21/01/2011, 17:18
Avatar de inyaka  
Fecha de Ingreso: junio-2006
Mensajes: 67
Antigüedad: 17 años, 9 meses
Puntos: 3
Respuesta: Que opinan acerca de esta idea? Un link de descarga temporal.

abrevie lo mas que pude:

Cita:
Iniciado por Ojete Ver Mensaje
Buenas, estaba buscando la manera de como hacer un link temporal pero no encontré mucha información, así que se me ocurrió programar uno yo mismo, tal ves se rían pero bueno, no se me ocurrió algo mejor por el momento, si alguien tiene una mejor idea pues agradecería que la compartiera, o si se les ocurre algo para mejorar el código pues igual se agradece. Bueno, la idea es la siguiente;
todo eso esta demás...

cuando alguien hace click en un botón para comprar un articulo descargable, paypal da la opción de redireccionar a una pagina que tu especifiques para después de haber completado el pago.
Entonces en esa url meto tres fechas juntas cifradas con base64, la del día de la compra y la de los 3 días siguientes, ademas emplazo algunos caracteres a las fechas ya cifradas con str_replace.
Cuando se completa el pago se redirecciona a la pagina donde se va a descargar el producto, a las fechas en GET, le aplico la función mysql_real_escape_string, le cambio los caracteres que anteriormente habíamos cambiado con str_replace, la descifro con base64 y hago las comparaciones necesarias para saber si las fechas que trae la url coinciden con la fecha actual y pues si no entonces no se muestra el link, que opinan
  #8 (permalink)  
Antiguo 21/01/2011, 17:23
 
Fecha de Ingreso: agosto-2010
Ubicación: Oakland california
Mensajes: 393
Antigüedad: 13 años, 8 meses
Puntos: 3
Respuesta: Que opinan acerca de esta idea? Un link de descarga temporal.

Bueno quise explicarlo con texto pero creo que era mejor postear el codigo desde un proncipio, bueno y ya dejando la clase de ortografia a un lado, que opinan?? acerka de la Idea?
  #9 (permalink)  
Antiguo 21/01/2011, 17:28
Avatar de inyaka  
Fecha de Ingreso: junio-2006
Mensajes: 67
Antigüedad: 17 años, 9 meses
Puntos: 3
Respuesta: Que opinan acerca de esta idea? Un link de descarga temporal.

luego de leer lo mas que pude entendi lo que querias hacer.

:P no me gusta la idea...

base64 no es una forma de encriptar MD5 si es una forma de encriptar.

veo mas simple y seguro que esa variable de la url sea una cadena MD5 que luego puedes comparar en tu DB para ver si es correcta
  #10 (permalink)  
Antiguo 21/01/2011, 17:29
Avatar de inyaka  
Fecha de Ingreso: junio-2006
Mensajes: 67
Antigüedad: 17 años, 9 meses
Puntos: 3
Respuesta: Que opinan acerca de esta idea? Un link de descarga temporal.

nunca dejes de lado la ortografía por desesperado que estés XD
  #11 (permalink)  
Antiguo 21/01/2011, 17:33
 
Fecha de Ingreso: agosto-2010
Ubicación: Oakland california
Mensajes: 393
Antigüedad: 13 años, 8 meses
Puntos: 3
Respuesta: Que opinan acerca de esta idea? Un link de descarga temporal.

Cita:
Iniciado por inyaka Ver Mensaje
nunca dejes de lado la ortografía por desesperado que estés XD
no estoy desesperado estoy conciente de que tengo que mejorar la ortografia...

Podrias explicarme como seria eso del md5 para eso de las fehas?? mas o menos se como se usa, pero para este caso no se, como se implementaria?
  #12 (permalink)  
Antiguo 21/01/2011, 17:45
Avatar de inyaka  
Fecha de Ingreso: junio-2006
Mensajes: 67
Antigüedad: 17 años, 9 meses
Puntos: 3
Respuesta: Que opinan acerca de esta idea? Un link de descarga temporal.

url que mandas desde paypal
Código PHP:
$urlproducto "?var1=blabla&var2=ipsusdolor&key="md5(date('d-m-Y h').$id_producto.$id_deotracosaquenotengaaccesoelusuario); 
luego recibes y comparas
Código PHP:
if($_GET['key'] == md5(date('d-m-Y h').$id_producto.$id_deotracosaquenotengaaccesoelusuario))
{
echo 
'te estafe¡¡¡';// listo ya verificaste la key


lo importante es que el usuario no tenga acceso a las variables que formaran tu key
  #13 (permalink)  
Antiguo 21/01/2011, 17:50
 
Fecha de Ingreso: agosto-2010
Ubicación: Oakland california
Mensajes: 393
Antigüedad: 13 años, 8 meses
Puntos: 3
Respuesta: Que opinan acerca de esta idea? Un link de descarga temporal.

Exelente inyaka, boy a intentar de esa manera, ya te cuento, Gracias.
  #14 (permalink)  
Antiguo 21/01/2011, 18:00
Avatar de inyaka  
Fecha de Ingreso: junio-2006
Mensajes: 67
Antigüedad: 17 años, 9 meses
Puntos: 3
Respuesta: Que opinan acerca de esta idea? Un link de descarga temporal.

usa el corrector para ortografía de firefox

nunca antes vi alguien decir boy (ingles niño) en ves de voy

XD saludos
  #15 (permalink)  
Antiguo 21/01/2011, 18:20
 
Fecha de Ingreso: agosto-2010
Ubicación: Oakland california
Mensajes: 393
Antigüedad: 13 años, 8 meses
Puntos: 3
Respuesta: Que opinan acerca de esta idea? Un link de descarga temporal.

Cita:
Iniciado por inyaka Ver Mensaje
usa el corrector para ortografía de firefox

nunca antes vi alguien decir boy (ingles niño) en ves de voy

XD saludos
y yo nunca vi alguien por aqui en los foros que criticara tanto las faltas de ortografia jajaja, aber si no llega un moderador y un nos mueve el tema al de "corrigiendo la ortografia con inyaka". De cualquier modo Gracias...
  #16 (permalink)  
Antiguo 21/01/2011, 18:34
Avatar de NUCKLEAR
Moderador radioactivo
 
Fecha de Ingreso: octubre-2005
Ubicación: Cordoba-Argentina
Mensajes: 5.688
Antigüedad: 18 años, 5 meses
Puntos: 890
Respuesta: Que opinan acerca de esta idea? Un link de descarga temporal.

Yo no voy a corregir tu ortografía, por que ya veo que es algo inútil y también opino que lo que quieres hacer es una idea descabellada.

1. Ten en cuenta de que todos los usuarios no tienen la paciencia para esperar una re-dirección, y si algo falla no puedes depender de eso. Para eso paypal dispone de IPN.

2. Se supone que solo paypal te debe devolver los datos del producto pagado y demás detalles de la transacción (amount, item, email, nombre del que pago etc.)

La forma correcta es que los datos de la compra los guardes en tu base de datos y que cuando el usuario pague, tomes los datos por URL con el autoreturn y por IPN (se supone que vas a tomar el "item_number" que te devuelve Paypal tal cual se lo enviaste y guardaste como id de la transacción) y actualices la tabla para que empiece el conteo regresivo.


Por ultimo según leo el concepto del pago y las fechas no las tienes del todo claro, se supone que el conteo regresivo va a ser desde que se finalizo la transacción, no desde que lo mandaste a pagar. Es lo más lógico no?

Saludos.
__________________
Drupal Argentina
  #17 (permalink)  
Antiguo 21/01/2011, 22:06
 
Fecha de Ingreso: agosto-2010
Ubicación: Oakland california
Mensajes: 393
Antigüedad: 13 años, 8 meses
Puntos: 3
Respuesta: Que opinan acerca de esta idea? Un link de descarga temporal.

y dale con la ortografia... lla no boi a diskutyr ezo beo qe tanviem es difisil ke me degen d quriticar...



Ya hablando mas en serio, claro los datos los guardo con ipn en una tabla y cuando decia redireccion me referia al autoreturn pero,
como seria lo de la cuenta regresiva NUCKLEAR? que guardas en la tabla cuando se ejecuta el ipn para despues hacer la cuenta regresiva?
me imagino que han de ser las 3 fechas para despues compararlas con la fecha actual no?

Última edición por Ojete; 21/01/2011 a las 23:17
  #18 (permalink)  
Antiguo 21/01/2011, 23:27
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Que opinan acerca de esta idea? Un link de descarga temporal.

Ni siquiera tienes que hacer un conteo... simplemente guarda en base de datos la id que le daras al cliente para generar la descarga, la fecha (y hora) en que se te abono el pago.

En cada intento de acceso solo verificas el codigo proporcionado y la fecha actual contra lo que tienes en base de datos.

La funcion time() te devuelve fecha y hora actual en formato timestamp
La funcion date() te permite dar formato a la fecha y hora dada (o la actual)
la funcion strtotime() convierte una fecha formateada en timestamp

Te recomiendo leer el manual de cada funcion en el sitio oficial de php, el acceso es tan facil como: http://www.php.net/nombre_de_funcion

Tambien busca Operaciones con fechas
__________________
- León, Guanajuato
- GV-Foto
  #19 (permalink)  
Antiguo 21/01/2011, 23:37
 
Fecha de Ingreso: agosto-2010
Ubicación: Oakland california
Mensajes: 393
Antigüedad: 13 años, 8 meses
Puntos: 3
Respuesta: Que opinan acerca de esta idea? Un link de descarga temporal.

Gracias tribylin, bueno me voy a leer esas funciones por que no entiendo como hacer que este link dure 3 dias sin hacer un conteo....

Etiquetas: idea, link, temporal, descargas
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 04:52.