webForumDet fria alternativet
Logga in / Bli medlem

Timerfunktion

ASP

11 svar · 356 visningar · startad av MickeA.com

Medlem sedan feb. 20034 441 inlägg
Trådstart#1

Hej
Har sett ngt liknande:

Timer = "10"

Do Until Timer = "0"
     Timer = Timer - 1
     If Timer = "0" Then
     'Gör Ngt...
Movenext
Loop

Vet inte var det var, men det jag vill åstakomma är förstås en timer, men just mitt exempel går ju tokfort, jag vill att 1 i 10 ska vara en sekund tex.

Inuti loopen ska även en if sats som hela tiden kollar om Timer är lika med noll, för då ska ngt hända.

Jag behöver nu hjälp med att fullborda detta.

Medlem sedan dec. 20003 887 inlägg
#2

Det du skrev känns som riktigt gammal basicprogrammering, när man fuskade med tid i sin kod.

sngStart = Timer
While Timer < sngStart + 10: Wend

Det bör ta cirka 10 sekunder...

Medlem sedan feb. 20034 441 inlägg
#3

Ok, jag ve tinte vad jag fick koden ifrån, såg det för länge här på Wf, sen gissade jag ihop rest4en själv ;))

MEn ok, din kjod kan alltså funka, var ngnstans ska jag pilla in min ifsats som kollar om det gått 10 sek?!

Medlem sedan dec. 20003 887 inlägg
#4

Det gör rad nummer två åt dig.

Medlem sedan feb. 20034 441 inlägg
#5

Ok men om jag vill ha en reDriecet där?

Hurska HELA koden se ut då?!

Medlem sedan dec. 20003 887 inlägg
#6

Ehh... ska du vänta x sekunder och sedan göra en redirect?

Sub WaitXSeconds(intSec)
  sngTimer = Timer
  While Timer < sngTimer + intSec: Wend
End Sub

WaitXSeconds(10)
Response.Redirect "http://wosh.com"
Medlem sedan feb. 20034 441 inlägg
#7

Tack troligen det jag behöver ; ))

Medlem sedan juni 20022 599 inlägg
#8

Tack troligen det jag behöver ; ))

Kanske inte. Att låta en sida i IIS:en sluka CPU i 10(!!) sekunder är ganska vansinnigt när man i princip får samma effekt med:

Response.write "<META http-equiv=""refresh"" content=""10;URL=http://wosh.com"">"
Medlem sedan feb. 20034 441 inlägg
#9

Får Man?!

Trodde man var tvungen att lägga den snutten inom head taggarna...
Men ok, nu börjar vi snacka ; ))

Medlem sedan juni 20022 599 inlägg
#10

Trodde man var tvungen att lägga den snutten inom head taggarna...

Ja, det är klart den bör ligga inom head-taggarna om man vill ha korrekt HTML. Men det finns väl inget som hindrar att du kodar i stil med:

if <villkor> then
	Response.write "<html><head>"
	Response.write "<META http-equiv=""refresh"" content=""10;URL=http://wosh.com"">"
	Response.write "</head><body>Vänta ..</body></html>"
else
	'Generera en annan sida.
end if

.. eller hur du nu tänkt dig? Men det är väl i alla fall bättre att låta klienten sköta väntandet än att bränna x miljarder klockcykler på servern bara för att få 10 sekunders fördröjning?

Medlem sedan feb. 20034 441 inlägg
#11

Jaja, absolut är det bättre, men jag kan inte koda på ditt sätt riktigt, men jag har löst det, skippade fördröjningen

Medlem sedan dec. 20003 887 inlägg
#12

Det tycker jag låter som den bästa lösningen. Ingen fördröjning = bra :)

Att låta alla andra på sidan vänta på tio sekunder bara därför att en person måste göra det är väl väldigt demokratiskt och bra ;)

253 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91
122 ms — deklarationer (db)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)