24. februar 2005 - 11:15
Der er
17 kommentarer og 1 løsning
Sotere efter dato
Hvad har jeg gjort forkert i denne kode?: Jeg bruger Access, dato feltet hedder createt, og er sat til dato/klok format. Typen er: 24-02-2005 // Dag / Månede / År Hvad skriver gær jeg forkert? <% ' Går 7 dage tilbage dato = DateAdd("d", -7, date) datoStr = Day(Dato) & "-" & Month(Dato) & "-" & Year(Dato) ' SQL Sætnignen strSQL = "Select * From stats Where Createt <= #" & datoStr & "# Order By Dato" ' Udskriver et eller andet Response.Write("bla") %>
Annonceindlæg fra XFlow
24. februar 2005 - 11:17
#1
Hvis datofeltet hedder createt så skal du jo sige: ...SORT BY createt
24. februar 2005 - 11:18
#2
Undskyld ... order by createt ;-)
24. februar 2005 - 11:19
#3
WHERE datoStr >= Createt
24. februar 2005 - 11:20
#4
Sorry: WHERE datoStr <= Createt
24. februar 2005 - 11:40
#5
<% ' Går 7 dage tilbage dato = DateAdd("d", -7, date) datoStr = Day(Dato) & "-" & Month(Dato) & "-" & Year(Dato) datoStr = CDate(datoStr) ' SQL Sætnignen strSQL = "SELECT * FROM stats WHERE createt <= #" & datoStr & "# ORDER BY createt;" ' Udskriver et eller andet Response.Write("bla") %> /hiks
24. februar 2005 - 12:00
#6
Nu har jeg skrevet den sådan her synes ikke der sker noget: <% ' Går 7 dage tilbage dato = DateAdd("d", -7, date) datoStr = Day(Dato) & "-" & Month(Dato) & "-" & Year(Dato) datoStr = CDate(datoStr) ' SQL Sætnignen Set Conn = Server.CreateObject("ADODB.Connection") Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)};UID=; PWD=;DBQ=" & Server.Mappath("../../db/base.mdb") strSQL = "SELECT * FROM stats WHERE createt <= #" & datoStr & "# ORDER BY createt;" Set rs = Server.CreateObject("ADODB.Recordset") Set rs = Conn.Execute(SQL) ' Udskriver et eller andet Response.Write("" & rs("IP") & "") %> Den skulle meget gerne udskrive alle mine poster da de er tilføjet idag. Hvad kan der være galdt?
24. februar 2005 - 12:04
#7
Den lister kun en enkelt hvis jeg skiver f.eks. Response.Write("bla") tilsidst
24. februar 2005 - 12:09
#8
du skal have det placeret i en løkke: <% ' Går 7 dage tilbage dato = DateAdd("d", -7, date) datoStr = Day(Dato) & "-" & Month(Dato) & "-" & Year(Dato) datoStr = CDate(datoStr) ' SQL Sætnignen Set Conn = Server.CreateObject("ADODB.Connection") Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)};UID=; PWD=;DBQ=" & Server.Mappath("../../db/base.mdb") strSQL = "SELECT * FROM stats WHERE createt <= #" & datoStr & "# ORDER BY createt;" Set rs = Server.CreateObject("ADODB.Recordset") Set rs = Conn.Execute(SQL) ' Udskriver et eller andet While rs.EOF = False Response.Write("" & rs("IP") & "") rs.movenext Wend %>
24. februar 2005 - 12:44
#9
For en fejl der siger? Item cannot be found in the collection corresponding to the requested name or ordinal. Er ikke så meget inde i de fejl der...Desværre.
24. februar 2005 - 12:52
#10
har du en attribut der hedder ip? /hiks
24. februar 2005 - 12:58
#11
Uddyb tak :D.
24. februar 2005 - 13:23
#12
I din sql bruger du "SELECT *" Er der en kolonne (attribut), der hedder IP i tabellen? Ligesom der er en createt (attribut). /hiks
24. februar 2005 - 13:39
#13
ja har prøvet med ID også, samme fejl kommer. Der er et felt i databasen der hedder IP under tabelen stats.
24. februar 2005 - 17:49
#14
To ting. Datoer via SQL skal overføres i formatte yyyy-mm-dd og ikke DK format med dagen først så vil access bytte rundt på dag og måned. Så disse to linjer:_ datoStr = Day(Dato) & "-" & Month(Dato) & "-" & Year(Dato) datoStr = CDate(datoStr) Skal blive til denne ene: datoStr = Year(Dato) & "-" & Month(Dato) & "-" & Day(Dato) Det andet ting du ligger SQL sætningen ind i variablen strSQL men executer variablen SQL. Så prøv at rette denne linje: Set rs = Conn.Execute(SQL) Til denne: Set rs = Conn.Execute(strSQL)
25. februar 2005 - 13:36
#15
eagleeye ang det med datoer der skal være år, månede, dag. Min database ændre det selv til det omvendte hvad kan jeg gøre ved det?
25. februar 2005 - 14:27
#16
Når du overføre datoer via SQL skal det være i formatet yyyy-mm-dd og det kan gøres som vist før med Year, Month og Day funktionerne. Kolonnen i databasen må havde det dato du ønsker det kan fint være DK format. Sådan her laver du formatet yyyy-mm-dd: Dato = "25-02-2005" atoStr = Year(Dato) & "-" & Month(Dato) & "-" & Day(Dato)
18. juni 2006 - 13:31
#17
eagleeye Smæk lige et svar så lukker vi denne :)
30. marts 2008 - 17:33
#18
eagleeye svar hjæp mig, men da jeg ikke har fået respons i 1.5 år lukker jeg.
Kurser inden for grundlæggende programmering