2010-04-13 2 views
0

축구 경기의 현재 분을 표시하는 데 필요한 논리를 알 수 없었습니다. 데이터베이스에 세 개의 필드가 있습니다.축구 경기의 현재 분 표시

DateFirstStarted DateSecondStarted DateFullEnded

내가 DateFirstStarted를 입력해야 할 때 게임을 시작하고 웹 사이트. 즉 오후 7시 5 분 오후 7시 25 분에 게임이 시작되고 웹 사이트에 '20 '이 표시됩니다. 그러나 45 분에 막을 내렸다. 그런 다음 두 번째 절반이 시작될 때 DateSecondStarted를 입력하고 46에서 90까지 카운트하고 거기서 멈춰야합니다. 나는 이해가 되니? 내가 어떻게 해? 이 작업을 수행하는 더 좋은 방법이 있습니까?


너무 복잡하지 않은 것이 있습니다. 전반기의 시작일과 하반기의 시작일을 직접 업데이트하겠습니다.

다음은 내가 시도한 방법입니다. 나는 오류를 얻지 않지만 작동하지는 않는다. 어떤 제안도 감사합니다.

DateFirstStarted = objLiveCommentary("DateFirstStarted") 
DateFirstEnded  = DateAdd("n", 45, DateFirstStarted) 
DateSecondStarted = objLiveCommentary("DateSecondStarted") 
DateSecondEnded  = DateAdd("n", 45, DateSecondStarted) 

If  DateFirstStarted => NOW() => DateFirstEnded Then 
Response.Write "first half" 
ElseIf DateSecondStarted => NOW() => DateSecondEnded Then 
Response.Write "second half" 
End If 
+2

추가 시간을 고려해야합니다. 상반기 추가 시간 2 분은 경기 46 분 *이 아니라 45 분과 2 분의 추가 시간입니다. 46 분은 후반 1 분 1 분입니다. 또한 경기가 중단되고 시계가 멈출 수 있습니다. 시작 시간과 종료 시간 만 저장하면 충분하지 않습니다. –

+1

Remus 100 %에 동의합니다. 예를 들어 ESPN과 같이 깊이 있고 정확한 것을하고 있다면 게임이 활발하게 재생되고 있는지 알려주는 일종의 라이브 피드에 액세스해야합니다. 즉, TimeOut과 레퍼리 콜, 의료 비상 사태 등으로 게임이 일시 중지 된 경우에 대해 알려야합니다. 그러나 극단적 인 단순화를 원한다면 논리는 훌륭하게 들립니다. 클래식 ASP 타이머를 사용하여이를 구현하는 방법을 살펴볼 수 있습니다. –

답변

0

DateDiff 기능을 살펴 보시겠습니까?

두 개의 datetimes를 전달하면 두 값 사이의 총 분/초 /시 등이 표시됩니다.

http://www.w3schools.com/vbScript/func_datediff.asp

일예

If DateDiff("n",StartOfMatch,Now()) < 45 Then 
    FirstHalf = True 
Elseif DateDiff("n",StartOfMatch,Now()) >= 45 Then 
    SecondHalf = True 
Else 
    MatchEnded = True 
End If 

희망이 있나요?