Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Salve galera.
Vou publicar um evento e quero colocar um Cronômetro regressivo que mostre em tempo real os dias, horas e minutos que faltam para determinada data, tipo:.
Faltam 5 dias, 12:30:00 para inauguração.
Qdo chegar no dia, quero que apenas apareça uma mensagem.
Alguém pode me ajudar?
>
21 horas atrás, Frank K Hosaka disse:
A minha sugestão é usar o JavaScript e não o PHP:
<div id=painel></div>
<script>
function mostrarHora() {
hora=new Date()
horafinal=new Date('2023-11-11 13:12')
if(hora>horafinal){alert("acabou!")}
painel.innerHTML=hora
setInterval(mostrarHora,1000)}
mostrarHora()
</script>
Ops, fiz besteira, você pediu contagem regressiva. Vou tentar consertar.
Aqui está a correção:
<div id=painel></div>
<script>
function mostrarHora() {
hora=new Date()
horafinal=new Date('2023-11-11 13:32')
diferençaHoras=horafinal-hora
if(diferençaHoras<=0){return painel.innerHTML="Acabou"}
painel.innerHTML=parseInt(diferençaHoras/1000) + " segundos"
setInterval(mostrarHora,1000)}
mostrarHora()
</script>
O PHP só é útil quando você precisa buscar informações no banco de dados tipo MySQL, ou quando você precisa repetir um monte de código repetitivo no HTML.
>
21 horas atrás, Frank K Hosaka disse:
A minha sugestão é usar o JavaScript e não o PHP:
<div id=painel></div>
<script>
function mostrarHora() {
hora=new Date()
horafinal=new Date('2023-11-11 13:12')
if(hora>horafinal){alert("acabou!")}
painel.innerHTML=hora
setInterval(mostrarHora,1000)}
mostrarHora()
</script>
Ops, fiz besteira, você pediu contagem regressiva. Vou tentar consertar.
Aqui está a correção:
<div id=painel></div>
<script>
function mostrarHora() {
hora=new Date()
horafinal=new Date('2023-11-11 13:32')
diferençaHoras=horafinal-hora
if(diferençaHoras<=0){return painel.innerHTML="Acabou"}
painel.innerHTML=parseInt(diferençaHoras/1000) + " segundos"
setInterval(mostrarHora,1000)}
mostrarHora()
</script>
O PHP só é útil quando você precisa buscar informações no banco de dados tipo MySQL, ou quando você precisa repetir um monte de código repetitivo no HTML.
Bom dia @Frank K Hosaka
Funcionou perfeitamente.
Mas eu gostaria de separar o resultado, entende? Pra poder editar de formas diferentes, ou separar como:
10dias 2h 20m 05s
Pode me ajudar?<div id=painel></div>
<script>
function separarMilissegundos(ms) {
dias = Math.floor(ms / 86400000)
horas = Math.floor((ms % 86400000) / 3600000);
minutos = Math.floor((ms % 3600000) / 60000);
segundos = Math.floor((ms % 60000) / 1000);
return "Faltam "+dias+" dias, "+horas+" horas, "+minutos+" minutos, "+segundos+" segundos."}
function mostrarHora() {
hora=new Date()
horafinal=new Date('2023-11-12 13:32')
diferençaHoras=horafinal-hora
if(diferençaHoras<=0){return painel.innerHTML="Acabou"}
painel.innerHTML=separarMilissegundos(diferençaHoras)
setInterval(mostrarHora,1000)}
mostrarHora()
</script>
A minha sugestão é usar o JavaScript e não o PHP: