Ir para conteúdo
Fórum Script Brasil
  • 0

Data Regressiva Em Asp


py2tz

Pergunta

Olá turma,

Estou com um problema de contagem regressiva de datas, achei um script em Javascript mas ficou meio manual a coisa, tenho que ficar alterando as datas constantemente.

Achei um outro em ASP aqui mesmo no SB mas não quer rodar e tambem gostaria de saber se tem como deixa-lo recebendo os dados do BD diretamente, ai ficaria automatico e não precisaria mais edita-los.

Meu BD é access

Sistema ASP

O script:

<%

DATA1 = Cdate(Now()) 'DATA ATUAL

DATA2 = Cdate(FINALIZA) 'DATA FINALIZAÇÃO

DIAS = DateDiff("d",DATA1,DATA2)

If DateDiff("h",DATA1,DATA2) <> 0 Then

HORA = DateDiff("h",DATA1,DATA2) - Cint(DIAS) * 24

Else

HORA = 0

End If

If DateDiff("n",DATA1,DATA2) <> 0 Then

MINUTO = DateDiff("n",DATA1,DATA2) - DateDiff("h",DATA1,DATA2) * 60

Else

MINUTO = 0

End If

If DateDiff("s",DATA1,DATA2) <> 0 Then

SEGUNDO = DateDiff("s",DATA1,DATA2) - DateDiff("n",DATA1,DATA2) * 60

Else

SEGUNDO = 0

End If

If SEGUNDO < 0 Then

MINUTO = MINUTO - 1

SEGUNDO = 60 - SEGUNDO + SEGUNDO * 2

End If

If MINUTO < 0 Then

HORA = HORA - 1

MINUTO = 60 - MINUTO + MINUTO * 2

End If

If HORA < 0 Then

DIAS = DIAS - 1

HORA = 24 - HORA + HORA * 2

End If

If DIAS > 1 Then

Response.Write "<font color=#003366 class=fontsize>" & DIAS & "d " & HORA & "h </font>"

ElseIf DIAS = 1 Then

Response.Write "<font color=#FF0000 class=fontsize>" & DIAS & "d " & HORA & "h </font>"

ElseIf DIAS = 0 AND HORA > 0 Then

Response.Write "<font color=#FF0000 class=fontsize>" & HORA & "h " & MINUTO & "m </font>"

ElseIf DIAS = 0 AND HORA = 0 AND SEGUNDO > 1 Then

Response.Write "<font color=#FF0000 class=fontsize>" & MINUTO & "m " & SEGUNDO & "s </font>"

End If

%>

No BD tenho um campo chamado Data_Inicio e visualizo com <%=Rs("Data_Inicio"%> onde o sistema faria a comparação entre a data do micro e a Data_Inicio e me mostraria os dias que faltavam para o evento, tipo:

Faltam 8 dia(s) para o CQ-M International DX Contest 2007 (ingles)

No mais agradeço qualquer ajuda.

73

Fausto

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

os dados do bd seriam atualizados a kda refresh...

o que você deve fazer é carregar a data final do evento e calcular a distancia ate o momento atual... apos isso o resto é js...

pra ficar pegando a todo momento do bd use ajax...

Link para o comentário
Compartilhar em outros sites

  • 0

Olá Bareta,

Tks pelo retorno,

o script fica dentro de uma página que é enviada aos leitores, e quando ele abre o email aparece varias coisas entre elas esse bloco que pega do BD os ultimos 5 registros ordenados pela data e mostra na tela.

Eu complemento com o contador regressivo que mostra quandos dias estao faltando para isso, mas esta em JAVA e funciona em algumas maquinas, porem alguns dizem que não conseguem ver e me retornam o email mostrando a parte do contador vira uma zona.

então precisva passar o que tenho em JAVA para ASP, veja o script que tenho funcionando em java:

<%set rs=conn.execute("select top 20 * from LINKS WHERE LINK_APPROVED = 1 Order By mês,Dia ASC")%>

<%do until rs.eof%>

<script LANGUAGE="JavaScript1.1">

//Contagem regressiva dos Concursos,

var before="<% If rs("Dia") <> "" Then %><a href='http://www.site.com.br/concurso/hitting.asp?id=<%=rs("LINK_ID")%>&url=<%=rs("LINK_URL")%>' target='_blank'><%=rs("LINK_NAME")%></a><%End If %>"

var current="<br>É Hoje Cara, Liga o Rádio !!!! <a href='http://www.site.com.br/concurso/hitting.asp?id=<%=rs("LINK_ID")%>&url=<%=rs("LINK_URL")%>' target='_blank'><%=rs("LINK_NAME")%></a>"

var montharray=new Array("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec")

function countdown(yr,m,d){

var today=new Date()

var todayy=today.getYear()

if (todayy < 1000)

todayy+=1900

var todaym=today.getMonth()

var todayd=today.getDate()

var todaystring=montharray[todaym]+" "+todayd+", "+todayy

var futurestring=montharray[m-1]+" "+d+", "+yr

var difference=(Math.round((Date.parse(futurestring)-Date.parse(todaystring))/(24*60*60*1000))*1)

var dstring=difference.toString()

if (difference==0)

document.write(current)

else if (difference>0){

document.write("<br>Faltam ")

for (i=0;i<=dstring.length-1;i++)

document.write('<img src="http://www.site.com.br/concurso/image/c'+dstring.charAt(i)+'.gif">')

document.write(' dia(s) para o '+before)

}

}

countdown(<%=rs("Ano")%>,<%=rs("mês")%>,<%=rs("Dia")%>)

</script>

<% rs.movenext

loop

%>

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...