/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Beregn tid ?
Fra : Is


Dato : 27-04-08 11:52

Jeg har forsøgt med

tidNu = Now()
tidNu = FormatDateTime(tidNu, vbGeneralDate)


' Finder senest gemt dato fra filerne

dim tempF4100
set tempF4100=Server.CreateObject("Scripting.FileSystemObject")


' find tiden fra Ringsted
set datoTemp4100 =
tempF4100.GetFile(Server.MapPath("davis/OutsideTemp.gif"))
datoTemp4100 = datoTemp4100.DateLastModified
dato4100 = FormatDateTime(datoTemp4100, vbGeneralDate)
dato4100 = tidNu - dato4100
Response.Write(" Ringsted " & dato4100)
Response.Write(" tiden er nu " & tidNu)



----------------
med det giver følgende fejl


Microsoft VBScript runtime error '800a000d'

Type mismatch: '[string: "27-04-2008 12:46:20"]'

/vejr_dk.asp, line 32


linje 32 er
dato4100 = tidNu - dato4100


Skal jeg hellere beregne dag og klokke hver for sig ??? og så sætte
det samme senere.




--
mvh
Erik Isager



 
 
Is (27-04-2008)
Kommentar
Fra : Is


Dato : 27-04-08 18:12

Regnefejl ved "dage"

Jeg har kastet noget sammen:

'Ringsted - Erik Isager
Dim dato4100, load4100, datoTemp4100, dato4100n, dato4100h, dato4100d

' tidNu = FormatDateTime(tidNu, vbGeneralDate)


' Finder senest gemt dato fra filerne

dim tempF4100
set tempF4100=Server.CreateObject("Scripting.FileSystemObject")


' find tiden fra Ringsted
set datoTemp4100 =
tempF4100.GetFile(Server.MapPath("davis/OutsideTemp.gif"))
load4100 = datoTemp4100.DateLastModified
' bruges ikke
' dato4100 = FormatDateTime(datoTemp4100, vbGeneralDate)
dato4100 = Now() - load4100



' Finder minuter siden upload
dato4100n = (minute(dato4100))
' Finder timerer siden upload
dato4100h = (hour(dato4100))
' Finder dage siden upload
dato4100d = (day(dato4100))

Response.Write(" tiden er nu " & Now() & "<br>")
Response.write( "uploadet " & load4100 & "<br>")
Response.Write(" Tidsforskel " & dato4100 & "<br>")
Response.Write(" Minuttal " & dato4100n & "<br>")
Response.Write(" Timetal " & dato4100h & "<br>")
Response.Write(" Dage " & dato4100d & "<br>")

--------------------------------------------------------------
Resultatet gir:
tiden er nu 27-04-2008 19:02:05
uploadet 27-04-2008 17:40:30
Tidsforskel 5,66550925941556E-02
Minuttal 21
Timetal 1
Dage 30
-------------------------------------------------------------

Min og timer ser rigtigt ud, men hvorfor giver "Dage" 30






--
mvh
Erik Isager








Stig Johansen (27-04-2008)
Kommentar
Fra : Stig Johansen


Dato : 27-04-08 19:39

Is wrote:

> Regnefejl ved "dage"

Kommer an på hvem man mener, der regner hvad.

....
> dato4100 = Now() - load4100

Her sætter du _datoen_ til 0,0566... osv.

> dato4100d = (day(dato4100))

Her finder du _dagen_ fra datoen.

> Dage 30
> Min og timer ser rigtigt ud

Det er kun fordi dit klokkeslet er større end dit upload tidspunkt, prøv at
se hvad den siger efter kl. 24.

> , men hvorfor giver "Dage" 30

Fordi datoerne er offset fra _30_.12.1899.

Hvis du skal beregne tidsforskelle, så plejer jeg at tage forskellen mellem
de to værdier og omregne dem til sekunder som:
dS = (T1-T2)*86400
Og så kan man begynde at barbere ned med at dividere med 60 , 60 og 24.

--
Med venlig hilsen
Stig Johansen

Is (27-04-2008)
Kommentar
Fra : Is


Dato : 27-04-08 20:21


"Stig Johansen" <wopr.dk@gmaill.com> skrev i en meddelelse
news:4814c8a8$0$90265$14726298@news.sunsite.dk...
> Is wrote:
>
> > Regnefejl ved "dage"
>
> Kommer an på hvem man mener, der regner hvad.
>
> ...
> > dato4100 = Now() - load4100
>
> Her sætter du _datoen_ til 0,0566... osv.
>
> > dato4100d = (day(dato4100))
>
> Her finder du _dagen_ fra datoen.
>
> > Dage 30
> > Min og timer ser rigtigt ud
>
> Det er kun fordi dit klokkeslet er større end dit upload tidspunkt,
prøv at
> se hvad den siger efter kl. 24.
>
> > , men hvorfor giver "Dage" 30
>
> Fordi datoerne er offset fra _30_.12.1899.
>
> Hvis du skal beregne tidsforskelle, så plejer jeg at tage forskellen
mellem
> de to værdier og omregne dem til sekunder som:
> dS = (T1-T2)*86400
> Og så kan man begynde at barbere ned med at dividere med 60 , 60 og
24.
>


Jeg takker for svar

jeg er imellemtiden også faldet over denne:

dato4100d = DateDiff("d", load4100, date)

Jeg tror den virker, men er ikke sikker


--
mvh
Erik Isager



Søg
Reklame
Statistik
Spørgsmål : 177552
Tips : 31968
Nyheder : 719565
Indlæg : 6408849
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste