webForumDet fria alternativet

Datediff

5 svar · 2 009 visningar · startad av Tottemannen

TottemannenMedlem sedan sep. 200620 inlägg
#1

Hej!

Hej!

Jag laddar upp data till en hemsida varje minut. Om uppladdningen är 15 minuter eller äldre, vill jag skicka vidare till en annan sida.

Ex. senaste uppdateringen är gjord 15:32 och nuvarande tid är 16:02, så ska jag skicka vidare till fel.asp. Är senaste uppdateringen gjord 15:32 och nuvarande tid är 15:35, så ska jag skicka vidare till index.asp.

<%

  Dim ttMin, ttTid, ttid1, ttid2
  ttMin = Cint((DateDiff("n", "0:00", FormatDateTime(Now,4)) - DateDiff("n", "0:00", "18:12"))) 
  ttTid = ((ttMin- (ttMin MOD 60))/60) & ":" & Right("0" & (ttMin MOD 60),2)
  
  If ttTid <= "00:15"  Then
  Response.Redirect "index.asp"

  Else
  Response.Redirect "fel.asp"  

  End If

  %>

Jag provade att sätta <% Response.Buffer=true %>, men då skickas man vidare till "fel.asp" på en gång.

Nån som vet vad det är för fel?

QuidMedlem sedan juni 20004 270 inlägg
#2

Jag förstår inte riktigt varför du vill göra om det till "00:15", borde ju bli fel då eftersom det tolkas som text och inte tid. Använd DateDiff direkt istället.

<%
vTid1 = #2011-08-23 21:30#
vTid2 = now()

IF DateDiff("n", vTid1, vTid2) < 15 THEN
	Response.Redirect "index.asp"
ELSE
	Response.Redirect "fel.asp"
END IF
%>
TottemannenMedlem sedan sep. 200620 inlägg
#3

Jag gör om en .htx fil till en .asp fil, så klockslaget (18:12 i koden nedan) är inte typ time(), now(), utan bara "tecken".

ttMin = Cint((DateDiff("n", "0:00", FormatDateTime(Now,4)) - DateDiff("n", "0:00", "18:12")))
QuidMedlem sedan juni 20004 270 inlägg
#4

Hur läser du in klockslaget då?

Kan du inte bara kolla om ttMin är mindre än 15?

<%
DIM ttMin
ttMin = Cint((DateDiff("n", "0:00", FormatDateTime(Now,4)) - DateDiff("n", "0:00", "12:00")))

IF ttMin <= 15  THEN
Response.Redirect "index.asp"
ELSE
Response.Redirect "fel.asp"
END IF
%>
TottemannenMedlem sedan sep. 200620 inlägg
#5

Tack!
Nu fungerar koden.

civilpolisenMedlem sedan dec. 2009816 inlägg
#6

Jag kanske har missat något här, men jag tycker fortfarande det är mycket kod för en så pass enkel manöver.

Otestad, så med reservation att jag vänt siffrorna åt rätt håll:
***

IF dateDiff("n", session("LastUpdated"), now()) <= 15 THEN
.. Response.Redirect "index.asp"
ELSE
.. Response.Redirect "fel.asp"
END IF

Genererad på 393 ms · cache AV · v20260730165559-full.f96bc7eb