PHP - cuenta regesiva

 
Vista:

cuenta regesiva

Publicado por camila (10 intervenciones) el 28/11/2019 20:12:47
hola presento una falla en mis contadores tengo 3 fechas distintas las cuales viene desde PHP cuando intento imprimrlas para que se vea la cuanta regresiva lo hago con JS a si

1
2
3
4
5
6
7
8
9
10
11
12
<script type="text/javascript">
var countDownDate = <?php echo strtotime($plans->expire_date)?> * 1000;
var now = <?php echo time() ?> * 1000;
function tiempo() {
    var time = (countDownDate - now + 1000) / 1000;
    var seconds = ('0' + Math.floor(time % 60)).slice(-2);
    var minutes = ('0' + Math.floor(time / 60 % 60)).slice(-2);
    var hours = ('0' + Math.floor(time / 3600 % 24)).slice(-2);
    var days = Math.floor(time / (3600 * 24));
    console.log(days + "D " + hours + "H " + minutes + "M " + seconds + " S");
};
</script>

cuando lo ejecuto desde consolo me arroja esto

console.log(tiempo());
|
|
21D 19H 54M 02 S
5D 19H 48M 02 S
29D 12H 09M 03 S
en este momento no hay problema pero si quiero que se actualice para que se vea la disminucion del tiempo me arroja esto

timer = setInterval(tiempo, 1000);
|
|
|
29D 12H 26M 54 S
29D 12H 26M 54 S
29D 12H 26M 54 S
29D 12H 26M 54 S
29D 12H 26M 54 S
29D 12H 26M 54 S

no veo que se disminulla el tempo ni mucho menos el resto de las fechas a que se debe por que ni se actualiza el piempo que queda y solo toma una de las fechas y no el resto que ocurre
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro
Val: 1.634
Plata
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

cuenta regesiva

Publicado por Alejandro (839 intervenciones) el 29/11/2019 18:18:01
  • Alejandro se encuentra ahora conectado en el
  • chat de PHP
En ningún momento estas aumentando el tiempo para que el periodo se valla reduciendo.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<script type="text/javascript">
	var countDownDate = <?php echo strtotime("2020-01-01")?> * 1000;
	var now = <?php echo time() ?> * 1000;
	function tiempo() {
		var time = (countDownDate - now + 1000) / 1000;
		var seconds = ('0' + Math.floor(time % 60)).slice(-2);
		var minutes = ('0' + Math.floor(time / 60 % 60)).slice(-2);
		var hours = ('0' + Math.floor(time / 3600 % 24)).slice(-2);
		var days = Math.floor(time / (3600 * 24));
		console.log(days + "D " + hours + "H " + minutes + "M " + seconds + " S");
		now+=1000; // Incrementa 1 segundo
	};
	timer = setInterval(tiempo, 1000);
</script>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar