asp倒计时代码错误

dim countdowndate,thedate,daysleft,hoursleft,minutesleft,secondsleft,toverday,starttimeoverday=3 ///表示3天时间starttime=2010-1-26 20:02:45 开始时间t=DateAdd("d",overday,starttime)//这里用来计算3天后的日期CountdownDate =tIf Date >= CountdownDate Thenconn.Execute("update [wmy_topic_list] set [over]=1 where id="&id&"")End IftheDate = now()DaysLeft = DateDiff("d",theDate,CountdownDate) - 1theDate = DateAdd("d",DaysLeft,theDate)HoursLeft = DateDiff("h",theDate,CountdownDate) - 1theDate = DateAdd("h",HoursLeft,theDate)MinutesLeft = DateDiff("n",theDate,CountdownDate) - 1theDate = DateAdd("n",MinutesLeft,theDate)SecondsLeft = DateDiff("s",theDate,CountdownDate) - 1但是结果出来后成了。1天27小时问题就是怎么会有27个小时。出来的结果 是这样的:---结束还有:3天27小时47分
2026年09月23日 16:16
有2个网友回答
网友(1):

<%
dim countdowndate,thedate,daysleft,hoursleft,minutesleft,secondsleft,toverday,starttime
overday=3
starttime="2010-1-26 20:02:45"
t=DateAdd("d",overday,starttime)
CountdownDate =t
theDate = now()
aa = DateDiff("s",theDate,CountdownDate)
daysleft=int(aa/60/60/24)
hoursleft=int((aa-daysleft*60*60*24)/60/60)
minutesleft=int((aa-daysleft*60*60*24-hoursleft*60*60)/60)
secondsleft=int(aa-daysleft*60*60*24-hoursleft*60*60-minutesleft*60)
%>
结束还有:<%= DaysLeft%>天<%= HoursLeft %>小时<%= MinutesLeft %>分<%=secondsleft%>秒

网友(2):

越搞越复杂,为什么不用vbscript的内置时间函数?