Avatar billede steffansteffan Nybegynder
09. oktober 2005 - 17:27 Der er 14 kommentarer og
1 løsning

Online bruger liste.

Jeg kan ikke få denne kode til at udtrække de rigtige brugere.
jeg skal ha udtrukket de brugere som sidst har været set for 1 time siden f.eks. eller en dag. men problemet er at den også udtrækket brugere som er over 3 månedere gammel. Hvad gør jeg forkert...?

<%
formDato = now()
konveretDato = Year(formDato) & "-" & Month(formDato) & "-" & Day(formDato) & " " & Hour(formDato) & ":" & Minute(formDato) & ":" & Second(formDato)

sql = "Select * From brugere Where sidst_set > " & Datediff("d", -1, konveretDato)
set rs3 = Connect.execute(sql)
Do
Response.Write(rs3("username") & "<br>")

rs3.MoveNext
Loop While Not rs3.EOF
%>
Avatar billede softspot Forsker
09. oktober 2005 - 18:29 #1
Er det ikke fordi du skal bruge DateAdd i stedet for datediff...

sql = "Select * From brugere Where sidst_set > " & DateAdd("d", -1, konveretDato)

I øvrigt er jeg lidt usikker på om du mener "set indenfor den sidste time" eller "ikke set indenfor den sidste time". Iflg. din SQL så er det sidste set indenfor det sidste døgn (altså med den ændring jeg har foreslået)...
Avatar billede steffansteffan Nybegynder
09. oktober 2005 - 18:39 #2
Nu er jeg lidt forvirret du skriver jeg skal bruge datediff og så kommer du med et eksempel med DateADD. Hvilken en skal jeg bruge...? Altså den skal liste de personer som er set indenfor den sidste time.
Avatar billede softspot Forsker
09. oktober 2005 - 18:41 #3
Jeg tror lige du skal læse mit svar een gang mere... :)
Avatar billede steffansteffan Nybegynder
09. oktober 2005 - 19:05 #4
argh ja min fejl, har drukket for mange øl i weekenden ;).
Når men når jeg skriver det iudskriver den ikke noget. Den bliver bare blank. Selvom der er nogle i databasen med en rigtig tid.... jeg bruger MySQL.
Avatar billede softspot Forsker
09. oktober 2005 - 19:11 #5
Jeg er ikke bekendt med MySQL-syntaks, men jeg kan i referencemanualen se at datoer skal omstilles apostroffer, så prøv evt:

sql = "Select * From brugere Where sidst_set > '" & DateAdd("d", -1, konveretDato) & "'"
Avatar billede steffansteffan Nybegynder
09. oktober 2005 - 19:29 #6
den lister stadig personer uden for den afsatte dag, kan det være noget med formatet jeg konvetere...
Avatar billede softspot Forsker
09. oktober 2005 - 19:34 #7
Måske. Såvidt jeg kunne se, så returnerer MySQL sine datoer i formatet yyyy-mm-dd, så det kan da være at den dato du sammenligner med skal have samme format... så den skal vel bare have samme behandling som konveretDato...
Avatar billede steffansteffan Nybegynder
09. oktober 2005 - 22:04 #8
Jeg fandt denne her...
sql = "SELECT COUNT(*) AS Found FROM brugere WHERE UNIX_TIMESTAMP(sidst_set) < (UNIX_TIMESTAMP(now()) - 7*24*60*60)"

Som skulle være bygget til mysql... En du kan genkende...?
Avatar billede softspot Forsker
09. oktober 2005 - 22:10 #9
Ja, jeg synes jeg har set en lign. løsning for nylig her på eksperten :)

Den der går så en uge tilbage i tiden.
Avatar billede steffansteffan Nybegynder
09. oktober 2005 - 22:23 #10
hvordan kommer du frem til en uge...? kan den ændres til f.eks. 1 time eller...?
Avatar billede softspot Forsker
09. oktober 2005 - 22:28 #11
7*24*60*60

60*60 = 3600 sekunder = 1 time

24*3600 = 86400 sekunder = 1 døgn

7*86400 = 604800 skunder = 7 døgn
Avatar billede softspot Forsker
09. oktober 2005 - 22:29 #12
Så mit gæt er

sql = "SELECT COUNT(*) AS Found FROM brugere WHERE UNIX_TIMESTAMP(sidst_set) < (UNIX_TIMESTAMP(now()) - 60*60)"
Avatar billede steffansteffan Nybegynder
30. marts 2008 - 17:46 #13
Hej softspot

Jeg kom videre med denne sag via dine forslag.
Smæk et svar og vi lukker denne gamle sag, beklager langsom respons tid.
Avatar billede softspot Forsker
30. marts 2008 - 19:23 #14
Jamen, så kommer der da lige et svar :)
Avatar billede softspot Forsker
30. marts 2008 - 21:40 #15
Tak for point :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester