Foros del Web » Programando para Internet » Javascript »

El contador se reinicia al actualizar

Estas en el tema de El contador se reinicia al actualizar en el foro de Javascript en Foros del Web. Hola amigos, verán tengo este problema con este codigo, es un contador de tiempo de 1 minuto, funciona bien, el tema es que si el ...
  #1 (permalink)  
Antiguo 28/01/2011, 10:32
 
Fecha de Ingreso: enero-2010
Mensajes: 198
Antigüedad: 14 años, 3 meses
Puntos: 1
El contador se reinicia al actualizar

Hola amigos, verán tengo este problema con este codigo, es un contador de tiempo de 1 minuto, funciona bien, el tema es que si el usuario apreta f5 actualiza la pagina el contador se reinicia.
Como puedo hacer para que esto no pase.

Aqui el codigo:

Código Javascript:
Ver original
  1. <script type="text/javascript">
  2.    var timeLimit = 1; //tiempo en minutos
  3.    var conteo = new Date(timeLimit * 60000);
  4.  
  5.  
  6.    function inicializar(){
  7.       document.getElementById('cuenta').childNodes[0].nodeValue =
  8.                   conteo.getMinutes() + ":" + conteo.getSeconds();
  9.                    
  10.    }
  11.  
  12.    function cuenta(){
  13.       intervaloRegresivo = setInterval("regresiva()", 1000);
  14.    }
  15.    function largarse(){
  16.     meLargo = setTimeout("location.href='index.php'", 6000);
  17. }
  18.  
  19.    function regresiva(){
  20.       if(conteo.getTime() > 0){
  21.          conteo.setTime(conteo.getTime() - 1000);
  22.  
  23.       }else{
  24.          clearInterval(intervaloRegresivo);
  25.  
  26. document.getElementById("cuenta").innerHTML="Ha terminado el conteo";
  27.  
  28.     document.getElementById("conteo").innerHTML= largarse();
  29.     }
  30.    
  31.       document.getElementById('cuenta').childNodes[0].nodeValue =
  32.                   conteo.getMinutes() + ":" + conteo.getSeconds();
  33.    
  34.    }
  35.  
  36.  
  37. </script>

Saludos
  #2 (permalink)  
Antiguo 28/01/2011, 11:23
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 1 mes
Puntos: 336
Respuesta: El contador se reinicia al actualizar

Te cuento...

Cuando haces contadores de tiempo en javascript siempre tendrás este problema, una buena alternativa en algunos casos es usar el reloj del equipo (contar los segundos transcurridos desde la petición), sin embargo si el usuario cambia la hora de su equipo podrá saltarse tu contador de tiempo.

Por lo tanto, la única solución completamente eficaz es basarse en el reloj del servidor, para esto necesitas usar PHP o ASP.
  #3 (permalink)  
Antiguo 28/01/2011, 11:25
 
Fecha de Ingreso: enero-2010
Mensajes: 198
Antigüedad: 14 años, 3 meses
Puntos: 1
Respuesta: El contador se reinicia al actualizar

Y como lo hago, inserto la fecha en que ingresa en una bd y de ahi cuento? Porque tambien está el problema de si deshabilita javascript y ahi es todo un tema.
  #4 (permalink)  
Antiguo 28/01/2011, 11:31
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 1 mes
Puntos: 336
Respuesta: El contador se reinicia al actualizar

en un BD o una sesión, y al terminar el contador hace que lo valide el servidor también.

la mejor es usar date(U) en PHP en una sesion

Código PHP:
Ver original
  1. $_SESSION['tiempo']=date('U');

'U' te entrega los segundos desde la epoca unix (1 de Enero del 1970 00:00:00 GMT) por lo que luego simplemente restas el tiempo actual con el tiempo que guardaste:

Código PHP:
Ver original
  1. if(date('U')>=$_SESSION['tiempo']+60) echo "ha transcurrido un minuto o mas";
  #5 (permalink)  
Antiguo 28/01/2011, 12:24
 
Fecha de Ingreso: enero-2010
Mensajes: 198
Antigüedad: 14 años, 3 meses
Puntos: 1
Respuesta: El contador se reinicia al actualizar

Pero igual lo puedo implementar con javascript tambien no?
  #6 (permalink)  
Antiguo 28/01/2011, 12:28
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 1 mes
Puntos: 336
Respuesta: El contador se reinicia al actualizar

si pero recuerda que el cliente puede cambiar la hora de su computador, que es el antiguo error que tenia RapidShare, BiteFight y otras paginas similares hace varios años, la gente cambiaba la hora del PC y podía saltarse los contadores.
  #7 (permalink)  
Antiguo 28/01/2011, 12:57
 
Fecha de Ingreso: enero-2010
Mensajes: 198
Antigüedad: 14 años, 3 meses
Puntos: 1
Respuesta: El contador se reinicia al actualizar

Ok, muchas gracias

Saludos

Etiquetas: contador, reinicia
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:32.