Avatar billede n!nja Nybegynder
17. september 2002 - 11:16 Der er 7 kommentarer og
1 løsning

Slet dato efter x-antal dage...

Hej Eksperter!

Jeg er ved at lave en side som skal fungere som nyhedsarkiv. Dvs. en side hvor jeg kan bestemme at f.eks. alle nyheder der er over 90 dage gamle skal udskrives på denne side...

Jeg har følgende (ved ikke om det er helt hen i vejret):
-----------------

strDate = DATEADD("d", -90, Date())
               
SQL = "SELECT * FROM  Nyheder Where NyhedsDato < '"& strDate &"' Order By NyhedsID DESC"
Set RS = Conn.Execute(SQL)
------------------

men jeg får følgende fejl:
------------------

Microsoft OLE DB Provider for ODBC Drivers error '80040e07'

[Microsoft][ODBC Microsoft Access Driver] Data type mismatch in criteria expression.

------------------

Hvis jeg udskriver strDate får jeg dette format f.eks. 9/7/2002 og min indputmaske i min db er 00-00-0000.

Jeg har indsat <%SetLocale(1030)%> i toppen af min asp-fil.

Håber der er nogen der kan hjælpe... :-)

Mvh - N!NJA
Avatar billede medions Nybegynder
17. september 2002 - 11:19 #1
strDate = DATEADD("d", -90, Date())
               
SQL = "SELECT * FROM  Nyheder Where NyhedsDato < #"& strDate &"# Order By NyhedsID DESC"
Set RS = Conn.Execute(SQL)

//>Rune
Avatar billede medions Nybegynder
17. september 2002 - 11:22 #2
Men ellers så prøv og sætte dette i toppen af dit dokument.:

<% Session.LCID = 1030 %>

//>Rune
Avatar billede n!nja Nybegynder
17. september 2002 - 11:25 #3
Så virker det jo bare :-D

Dvs. at "#" og "&" udskriver forskelligt datoformat...?
Avatar billede n!nja Nybegynder
17. september 2002 - 11:26 #4
og hvad er forskellen på <%SetLocale(1030)%> og <% Session.LCID = 1030 %>?

Så skal du også nok få dine points :-)
Avatar billede medions Nybegynder
17. september 2002 - 11:28 #5
SetLocale er vidst VBScript, men det er en Session du skal sætte i stedet for.. Og så LCID skal så være på 1030 da det er europærisk det datoformaten skal være i!

//>Rune
Avatar billede medions Nybegynder
17. september 2002 - 11:29 #6
-altså VBScript client-sided ;-)

//>Rune
Avatar billede medions Nybegynder
17. september 2002 - 11:33 #7
Thx 4 Poinz

//>Rune
Avatar billede boris Mester
17. september 2002 - 11:34 #8
Det mest sikre er at manipulere datoerne ved at skille dem ad i dag, måned, år og sætte dem sammen igen.
Du kan f.eks. få datoen i dag på dansk ved at skrive
Day(DATO)&Month(DATO)&Year(DATO) , hvor DATO er den variabel, som indeholder datoen.
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
Kurser inden for grundlæggende programmering

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