|
|
|

|

|
Dicas
|

|
ASP - Active Server Page (Miscelâneas)
|
|
 |
Título da Dica: Temporizador
|
 |
|
|
Postada em 9/10/2003 por ^HEAVY-METAL^
Quem quer fazer um site que faz um update automatico, rapidamente encontra um problema nas ASP. Porque as ASP não ficam sempre ativas, mas só o tempo que demora a correr o script das mesmas.
As pessoas vêm com a ideia... então deixo script correr sempre e mantenho o browser sempre aberto!!?!? Não me parece uma solução muito prática ;-)
Aqui segue uma solução mais prática, que faz o update á página se já passou do tempo prentendido e a fazer o update respectivo. O script não faz update se ninguém visitar a pagina, mas se ninguém visita a pagina porquê fazer update!?!?
Ele funciona assim: o arquivo time.asp contém as variáveis da hora e do dia (Datum). O arquivo compare.asp vê se a data ou a hora são diferentes e faz o update (subrotina write) a time.asp e a outra coisa que pretender-mos fazer o update. A logica do script é um pouco 'marada' mas funciona bem.
Arquivo: time.asp
<%strdate="11"
strtime="21"
%>
Arquivo: compare.asp
<%@LCID=2070 %>
<!--#include file="time.asp"-->
<%
Dim tnow, dnow
tnow=left(time(), 2)
dnow=left(date(), 2)
if NOT dnow = strdate then
Response.write dnow &"<>"& strdate
write
else
if CInt(tnow)>CInt(strtime) then
response.write tnow &" " & strtime
write
end if
end if
sub write
pat=Server.mappath("time.asp")
Set objfso= CreateObject("Scripting.FileSystemObject")
objfso.createtextfile pat
set objf=objfso.getfile(pat)
set objtxt=objf.openastextstream(2, -2)
'O 3 e a quantidade de horas para fazer o update
tnow=tnow + 3
if tnow > 23 then tnow=tnow-23
objtxt.writeline chr(60) & chr(37) & "strdate=" & chr(34) & dnow & chr(34)
objtxt.writeline "strtime=" & chr(34) & tnow & chr(34)
objtxt.writeline chr(37) & chr(62)
objtxt.close
'Aqui podes por o resto o que tens fazer o update
Response.write "done"
end sub
%>
T+,
|
|
|
|

|