Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Tidsintervall

Postades av 2003-02-06 11:16:25 - Uffe Bengtsson, i forum asp - allmänt, Tråden har 15 Kommentarer och lästs av 523 personer

Hej!! Jag har en liten kodsnutt som kollar om tiden är före eller efter 14:00. Problemet är att om tiden är efter 14:00 så ska den bara gälla för den dagen och inte som nu för all framtid. Alltså jag vill att If-satsen kollar om tiden är mellan 14:00 och 24:00. Någon som har något förslag?

<code>
dDatum = FormatDateTime(Now, 2)
Deadline = "14:00:00"

strTime = CDate(dDatum & " " & Deadline)

If DateDiff("h", strTime, Now) >= 0 Then
Response.Write "Debiteras"
ElseIf DateDiff("h", strTime, Now) <= 0 Then
Response.Write "Avboka"
End If
</code>


Svara

Sv: Tidsintervall

Postades av 2003-02-06 11:33:37 - Fredrik Hjälte

IF Now > CDATE("2003-02-06 14:00:00") THEN

ELSE

END IF


Svara

Sv: Tidsintervall

Postades av 2003-02-06 12:03:04 - Johan Djupmarker

strTime = CDate(dDatum & " " & Deadline)
strMidnatt = CDate(dDatum & " 23:59:59")

If DateDiff("h", strTime, Now) >= 0 AND DateDiff("s", strMidnatt, Now) < 0 Then

Borde nog fungera...

/Johan


Svara

Sv: Tidsintervall

Postades av 2003-02-06 12:25:03 - Uffe Bengtsson

Nej, den ville inte heller fungera. Så fort jag aktiverar strMidnatt får jag upp debiteras på allting.


Svara

Sv: Tidsintervall

Postades av 2003-02-06 13:23:38 - Andreas Hillqvist

Vad menar du nu?

Är det något sånt här du är ute efter?
<code>
If Time >= CDATE("14:00:00") Then
'Klockan är efter två
Else
'Än är det inte försent.
End If
</code>
Eller kanske du skall gämföra en tidpunk.
<code>
Dim MinTime
Dim MaxTime
MinTime = DateAdd("h", 14, Date)
MaxTime = DateAdd("d", 1, Date)

If rs("Tidpunkt") < MinTime
'Har redan inträtffat
ElseIf rs("Tidpunkt") > MaxTime
'Inträffar i framtiden
Else 'If rs("Tidpunkt") >= MinTime And rs("Tidpunkt") < MaxTime Then
'Tidpunkt inträffar idag mellan två och tolv
End If
</code>


Svara

Sv: Tidsintervall

Postades av 2003-02-06 13:54:22 - Fredrik Hjälte

Ville du inte bara kolla detta för en speciell dag?
Eller ska det gälla för alla dagar?


ÄÄÄÄHHHH, Sorry, läste inte frågan ordentligt :-)
Det Andreas skrev borde ju funka.


Svara

Sv: Tidsintervall

Postades av 2003-02-06 14:06:15 - Uffe Bengtsson

OK...Ska försöka formulera om det. Låt säga att vi har två datumar, idag och imorgon. Det finns ett antal poster som är utloopade från en databas. Dessa poster ska jag kunna påverka beroende på vilken tid det är på dagen. I detta fallet ska jag inte kunna avboka mellan 14:00 o 24:00 utan tiden ska debiteras. Problemet är att när klockan är mellan 14:00 o 24:00 så påverkas även tiderna som är inbokade imorgon.

Hoppas det blev lite klarare.


Svara

Sv: Tidsintervall

Postades av 2003-02-06 14:23:50 - Lisbeth Dahlin

Funderingar... du vill alltså kunna styra att det är bara idag mellan 14 och 24 som det är låst, inte i morgon...

Jag har inte kollat exakt detta i ASP men jag vet att det i Excel och Access är så, att varje datum, dvs dag, motsvaras av ett heltal, t ex så är det idag dag nr 37658. Kolla själv genom att skriva in värdet i Excel och formatera det till datum... ;-)

Dygnet är ju uppdelat i timmar och minuter, och dessa är decimaltal... kl 12 = 0,5, kl 06 = 0,25 osv. När jag testade var tiden ,59842.

Du måste alltså ta reda på vad talvärdet är för idag kl 14 resp 24 och sedan hantera värdena utifrån det, alltså ta med både datum och tid, pröva med att addera datum och tid med varandra...

Sorry om jag är lite disträ - men jag har utbildning just nu och kan inte samla tankarna helt... ;-) Hoppas det hjälper dig på rätt väg!

/Lissu


Svara

Sv: Tidsintervall

Postades av 2003-02-06 14:36:14 - Uffe Bengtsson

Ja, precis. Men tiderna jag jobbar med hämtas inte från databasen.


Svara

Sv: Tidsintervall

Postades av 2003-02-06 14:49:06 - Lisbeth Dahlin

Har trollat :-) fram lite kod - kopera och kör den och se om den kan vara till någon hjälp... Det är inte din lösning, men kanske en bit på väg! Hör av dig annars så får vi se om jag kan göra något... :-)

<code>
<table border="1" cellpadding="0" cellspacing="0" width="60%" id="AutoNumber1">
<tr>
<td width="50%">= Date()</td>
<td width="50%"><% = date()%>&nbsp;</td>
</tr>
<tr>
<td width="50%">= time()</td>
<td width="50%"><% = time()%>&nbsp;</td>
</tr>
<tr>
<td width="50%">= date() + time()</td>
<td width="50%"><% = date() + time()%>&nbsp;</td>
</tr>
<tr>
<td width="50%">= formatnumber(date() ,4)</td>
<td width="50%"><% = formatnumber(date() ,4)%>&nbsp;</td>
</tr>
<tr>
<td width="50%">= formatnumber(time() ,4)</td>
<td width="50%"><% = formatnumber(time() ,4) %>&nbsp;</td>
</tr>
<tr>
<td width="50%">= formatnumber(date()+ time() ,4)</td>
<td width="50%"><% = formatnumber(date() + time() ,4) %>&nbsp;</td>
</tr>

<tr>
<td width="50%">&nbsp;</td>
<td width="50%">&nbsp;</td>
</tr>
<tr>
<td width="50%">= formatnumber(date() + cdate("14:00:00") ,4), dvs (Kl 14 idag) </td>
<td width="50%"><% = formatnumber(date() + cdate("14:00:00") ,4) %>&nbsp;</td>
</tr>
<tr>
<td width="50%">= formatnumber(date() + 1 ,4), dvs Kl 24 idag = i morgon kl 00:00</td>
<td width="50%"><% = formatnumber(date() + 1 ,4) %>&nbsp;</td>
</tr>
</table>
</code>

När du har fått fram en variabel att jämföra med borde resten gå bra... :-)


Svara

Sv: Tidsintervall

Postades av 2003-02-06 16:52:41 - Uffe Bengtsson

OK...Var jag inte förvirrad innan så är jag det nu. Har provat denne varianten, men det ända som skrivs ut är "Har redan inträffat" oavsett vad jag ställer klockan på i servern.
<code>
<%
Dim MinTime
Dim MaxTime
MinTime = FormatNumber(Date() + CDate("14:00:00") ,4)
MaxTime = FormatNumber(Date() + 1 ,4)

If FormatNumber(Date(),4) < MinTime Then
Response.Write "Har redan inträffat"
ElseIf FormatNumber(Date(),4) > MaxTime Then
Response.Write "Inträffar i framtiden"
ElseIf FormatNumber(Date(),4) >= MinTime And FormatNumber(Date(),4) < MaxTime Then
Response.Write "Tidpunkt inträffar idag mellan två och tolv"
End If
%>
</code>


Svara

Sv: Tidsintervall

Postades av 2003-02-06 17:17:02 - Lisbeth Dahlin

Har du testat att skriva ut vilka värden du egentligen jämför? Det kan vara lite lättare att se det IRL... ;-)

Jag brukar ha svårt att logiskt hålla isär vad som händer när i ett else-if-slinga... men det beror väl antingen på ovana eller lathet ;-)

Nu vet jag att jag kanske får många proffs emot mig men jag brukar använda Select Case - jag tycker jag får bättre överblick då...

Det är lätt att binda upp svansen på sig själv...


Svara

Sv: Tidsintervall

Postades av 2003-02-06 19:18:05 - Uffe Bengtsson

OK...men när jag får det att fungera, om jag får det att fungera då blir ju resultatet det samma som det jag arbetat med innan. Värdena av denna kod förs ju likväl över till nästa dag, eller é jag helt ute o snurrar?

<code>
<%
Dim MinTime
Dim MaxTime
MinTime = FormatNumber(Date() + CDate("14:00:00") ,4)
MaxTime = FormatNumber(Date() + 1 ,4)

'Om klockan är 19:26
Response.Write("MinTime=" & MinTime & "<br>")' MinTime=37 658,5833
Response.Write("MaxTime=" & MaxTime & "<br>")' MaxTime=37 659,0000
Response.Write("Datum som jämförs=" & FormatNumber(Date() + Time() ,4) & "<br>")' Datum som jämförs=37 658,8100


If FormatNumber(Date(),4) + Time() < MinTime Then
Response.Write "Har redan inträffat"
ElseIf FormatNumber(Date(),4) + Time > MaxTime Then
Response.Write "Inträffar i framtiden"
ElseIf FormatNumber(Date(),4) + Time >= MinTime And FormatNumber(Date(),4) + Time < MaxTime Then
Response.Write "Tidpunkt inträffar idag mellan två och tolv"
End If
%>
</code>

Verkar som om forumet förvränger min kod lite...


Svara

Sv: Tidsintervall

Postades av 2003-02-07 18:24:21 - Lisbeth Dahlin

Hej igen (tog lite tid)

Denna tror jag funkar - om du inte redan har löst det!

<code>
<%
Dim MinTime
Dim MaxTime
MinTime = Date() + CDate("14:00:00")
MaxTime = Date() + 1

'Om klockan är 19:26
Response.Write("MinTime=" & MinTime & "<br>")
Response.Write("MaxTime=" & MaxTime & "<br>")
Response.Write("Datum som jämförs=" & Date() + Time() & "<br>")


If Date() + Time() < MinTime Then
Response.Write "Har redan inträffat"
ElseIf date() + Time() > MaxTime Then


Response.Write "Inträffar i framtiden"
ElseIf FormatNumber(Date(),4) + Time >= MinTime And FormatNumber(Date(),4) + Time < MaxTime Then
Response.Write "Tidpunkt inträffar idag mellan två och tolv"
End If
%>
</code>


Svara

Sv: Tidsintervall

Postades av 2003-02-08 08:49:29 - Uffe Bengtsson

Jepp, den fungerar. Och nu förstår jag vad ni menade Andreas och Johan. Någonting måste ju styra att tiden är imorgon.

//--Filofaxen??--


Svara

Nyligen

  • 08:28 Butiksskyltar: Hur upplever utbude
  • 22:31 Slappna av
  • 19:55 kick-off med fokus på hälsa?
  • 19:53 kick-off med fokus på hälsa?
  • 16:24 Föreslå en skönhetsklinik online
  • 16:23 Föreslå en skönhetsklinik online
  • 18:42 Hvor finder man håndlavede lamper
  • 18:41 Hvor finder man håndlavede lamper

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 811
27 960
271 761
531
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies