• Miércoles 1 de Mayo de 2024, 09:37

Autor Tema:  Cuenta Atras En Flash Con La Hora Del Servidor  (Leído 3364 veces)

juanram

  • Nuevo Miembro
  • *
  • Mensajes: 5
    • Ver Perfil
Cuenta Atras En Flash Con La Hora Del Servidor
« en: Miércoles 2 de Mayo de 2007, 17:46 »
0
Hola a todos, tengo un problema, tengo el codigo siguiente en flash, pero como podeis imaginar me coge la hora que tenga cada uno en su ordenador, lo cual es una faena porque es una cuenta atras que anuncia la finalizacion de un evento concreto, y el que esté en canarias pensará que todavía sigue el evento cuando en realidad ya terminó, no se si me explico. Hay alguna manera de cambiar el codigo para que funcione con la hora del servidor?, para que el evento acabe al mismo tiempo para todos?. Os dejo el código, gracias de antemano por vuestro tiempo, que me estoy volviendo loco con este tema.

Código:
Código: Text
  1. var mascero:Function = function (n:Number):String{return n<10?'0'+n:n;}
  2. var fecha_limite:Date = new Date(2007,4,4,23,59,59);
  3. this.onEnterFrame = function(){
  4.    var fecha_actual:Date = new Date();
  5.    var falta:Number = (fecha_limite.getTime() - fecha_actual.getTime())/10;
  6.    
  7.    if(falta > 0){
  8.       var d:Number = Math.floor(falta/8640000);
  9.       var h:Number = Math.floor((falta%8640000)/360000);
  10.       var m:Number = Math.floor((falta%360000)/6000);
  11.       var s:Number = Math.floor((falta%6000)/100);
  12.       falta1_txt.text = mascero(d)+'d : '+mascero(h)+'h : '+mascero(m)+'m : '+mascero(s)+'s';
  13.    }else{
  14.       falta1_txt.text = 'evento finalizado';
  15.       delete this.onEnterFrame;
  16.    }
  17. }
  18. stop();
  19.  

dragnus

  • Miembro MUY activo
  • ***
  • Mensajes: 103
  • Nacionalidad: co
    • Ver Perfil
    • http://www.panalcorp.com
Re: Cuenta Atras En Flash Con La Hora Del Servidor
« Respuesta #1 en: Miércoles 2 de Mayo de 2007, 18:23 »
0
Para q tome la hora del server debes tener una pagina .php, o aspx o asp en fin....
de ahi tomas la hora al server y lo envias al swf con la fecha q real del server :D

juanram

  • Nuevo Miembro
  • *
  • Mensajes: 5
    • Ver Perfil
Re: Cuenta Atras En Flash Con La Hora Del Servidor
« Respuesta #2 en: Miércoles 2 de Mayo de 2007, 18:57 »
0
en el php tengo esto puesto
Código: Text
  1. <?php
  2. echo "time=" . time();
  3. ?>
  4.  

y en el flash al final añadi lo siguiente
Código: Text
  1. server.load("gettime.php");
  2.  
  3. counter._visible = false;
  4.  

quedandome así
Código: Text
  1.  
  2. var mascero:Function = function (n:Number):String{return n<10?'0'+n:n;}
  3.  
  4.  
  5. var fecha_limite:Date = new Date(2007,4,4,23,59,59);
  6.  
  7. this.onEnterFrame = function(){
  8.   var fecha_servidor:Date = new Date();
  9.   var falta:Number = (fecha_limite.getTime() - fecha_servidor.getTime())/10;
  10.  
  11.   if(falta > 0){
  12.     var d:Number = Math.floor(falta/8640000); //dias
  13.     var h:Number = Math.floor((falta%8640000)/360000); //horas
  14.     var m:Number = Math.floor((falta%360000)/6000); //minutos
  15.     var s:Number = Math.floor((falta%6000)/100); //segundos
  16.     falta1_txt.text = mascero(d)+'d : '+mascero(h)+'h : '+mascero(m)+'m : '+mascero(s)+'s';
  17.   }else{
  18.     falta1_txt.text = 'evento finalizado';
  19.     delete this.onEnterFrame;
  20.   }
  21.   server.load("gettime.php");
  22.  
  23. counter._visible = false;
  24. }
  25.  
  26. stop();
  27.  
pero no me funciona, se que algo hago mal pero no entiendo el que, gracias

juanram

  • Nuevo Miembro
  • *
  • Mensajes: 5
    • Ver Perfil
Re: Cuenta Atras En Flash Con La Hora Del Servidor
« Respuesta #3 en: Miércoles 2 de Mayo de 2007, 20:43 »
0
bueno ya encontre otra solución, tuve que cambiar todo el código y ya me funciona, www.alabaja.com, pero ahora se me pasa una idea por la cabeza, cada contador debe ir enlazado a un php diferente? ahora mismo los tengo todos enlazados al mismo, pero no se si eso sobrecarga demasiado, un saludo
P.D: otra cosa que parece fallar es que si cambio la hora del ordenador va bien, pero si cambio la gmt entonces si me cambio el tiempo... mi desesperacion aumenta por momentos y el tiempo se me acaba para arreglarlo, ayuda porfavor !!  :brickwall:  :hitcomp:

dragnus

  • Miembro MUY activo
  • ***
  • Mensajes: 103
  • Nacionalidad: co
    • Ver Perfil
    • http://www.panalcorp.com
Re: Cuenta Atras En Flash Con La Hora Del Servidor
« Respuesta #4 en: Jueves 3 de Mayo de 2007, 14:55 »
0
Me alegra q ya encontraste la solucion, lo q te decía con php, es mas o menos lo q hiciste, no te entiendo cuando dices q lo enlasas a un php diferente pues el flash mire el mismo php. no ??
no se sobre carga, ahora tampoco te entiendo el gmt, es decir q formato de fecha ?? horario de inverno verano etc ??

juanram

  • Nuevo Miembro
  • *
  • Mensajes: 5
    • Ver Perfil
Re: Cuenta Atras En Flash Con La Hora Del Servidor
« Respuesta #5 en: Jueves 3 de Mayo de 2007, 15:03 »
0
hola, lo de enlazar a php diferentes, me refiero a con la misma programacion, pero con nombres diferentes, es decir la subasta1 que poda la hora al php1, la 2 al php2 y asi. Pero bueno eso realmente ya es lo de menos, lo del GMT me esta volviendo loco, el servidor va con hora española, GMT+1, en Canarias tienen una hora menos GMT, y al mirar la cuenta atras les aparece que queda 1 horamas para que finalice, y eso es bastante problematico teniendo en cuenta que es una subasta y deberia cerrarse a la misma hora para todo el mundo, es decir, a las 12 de la noche hora española, para todos, seas de la franja horaria que seas. He estado leyendo por un millon de sitios, y encontre algo qque no se si podra funcionar, algo relacionado con gmmktime pero no tengo ni papa, no entiendo como hacerlo, un saludo y muchas gracias por estar respondiendome, pues es urgentisimo, la subasta termina mañana a las 12 de la noche y voy a contrareloj para arreglarlo :brickwall: