Avatar billede litop Nybegynder
10. oktober 2004 - 16:38 Der er 8 kommentarer og
1 løsning

dato < startdato

Hey Experts

Jeg skal have talt hvor mange nyheder mine skribenter de skriver. Det går fint når jeg bare skal vise alle sammen, men vi starter på en frisk nu, derfor har jeg brugt en startdato.
Alligevel viser den alle nyheder :o(


KODE:

startdato = "08-10-2004"
Set RS_edit_personel = Server.CreateObject("ADODB.RecordSet")
RS_edit_personel.open "Select * From [users] WHERE opsagt = false Order by firstname" , conn_admin, 1, 3
Do while not RS_edit_personel.EOF
Set rsnews = Server.CreateObject("ADODB.RecordSet")
rsnews.open "select count(*) as ialt From [nyheder] WHERE Dato >" & startdato & " AND forfatter = " & RS_edit_personel("id") & "", conn_admin, 1, 3
Do while not rsnews.eof


Hvad gør jeg forkert???

Vil gerne have det lavet så jeg også kan skrive to datoer i to tekstfelter, og den så sorterer efter det...

Help me ObiWanKenobi - You are my only hope...

</LITOP>
Avatar billede medions Nybegynder
10. oktober 2004 - 16:40 #1
Prøv med DateDiff('d',dato1, dato2)
Evt. kig i manualen under DateDiff()

//>Rune
Avatar billede eagleeye Praktikant
10. oktober 2004 - 16:41 #2
Når man bruger danske datoer og Access kan man opleve Access bytter rundt på måned og dag. Problemet opstår fordi Access bruger US eller UK dato format via SQL, som enten er yyyy-mm-dd eller mm-dd-yyyy.

Når man så indsætter en dato i dansk dato format som er dd-mm-yyyy, vil Access bytte rundt på dag og måned i datoen.

Der er en løsning og det er at bruge dato funktionerne Year, Month og Day til at formatere din dato.

Så prøv:

startdato = "08-10-2004"
strDato = year(startdato)&"-"&month(startdato)&"-"&day(startdato)
rsnews.open "select count(*) as ialt From [nyheder] WHERE Dato > #" & strdato & "# AND forfatter = " & RS_edit_personel("id") & "", conn_admin, 1, 3
Avatar billede litop Nybegynder
10. oktober 2004 - 16:46 #3
Eagleeye:: Det virker klasse :o)

Hvordan laver jeg så det med de to tekstfelter?
Avatar billede eagleeye Praktikant
10. oktober 2004 - 16:49 #4
De to datoer er det start og slut dato?
Avatar billede litop Nybegynder
10. oktober 2004 - 16:49 #5
ja
Avatar billede eagleeye Praktikant
10. oktober 2004 - 16:53 #6
Du kan lave to in put felter så som kan hedde startdato og slutdato

Så kan det laves i stil med:

startdato=request.form("startdato")
strDato = year(startdato)&"-"&month(startdato)&"-"&day(startdato)
slutdato=request.form("slutdato")
strdatoslut=year(slutdato)&"-"&month(slutdato)&"-"&day(slutdato)

rsnews.open "select count(*) as ialt From [nyheder] WHERE Dato > #" & strdato & "# and dato < #" & strdatoslut & "#  AND forfatter = " & RS_edit_personel("id") & "", conn_admin, 1, 3
Avatar billede litop Nybegynder
10. oktober 2004 - 16:59 #7
oki :o)

Kan jeg så ikke lave noget med at den som standart viser alle der er ældre end i dag, og først når man indtaster så gør den det som du skrev ovenover - Bare så der ikke er flere sql sætninger :o)

Forstår du?
Avatar billede eagleeye Praktikant
10. oktober 2004 - 17:03 #8
Jo det så skal du prøve noget som dette:

Hvis man ikke har angivet hverken start eller slut dato findes alle som er ældre end idag, man kan også vælge at angive enten start eller slut dato som enste.



startdato=request.form("startdato")
if isDate(startdato) then
  strDato = year(startdato)&"-"&month(startdato)&"-"&day(startdato)
  strWhere = " dato > #" & strDato & "#"
end if
slutdato=request.form("slutdato")
if isDate(slutdato) then
  if strWhere <> "" then strWhere = strWhere & " AND "
  strdatoslut=year(slutdato)&"-"&month(slutdato)&"-"&day(slutdato)
  strWhere = strWhere & " dato < #" & strdatoslut & "#"
end if

sql = "select count(*) as ialt From [nyheder] WHERE "
if strWhere <> "" then
  sql = sql & strWhere & " AND "
else
  sql = sql & " dato<=Date() AND "
end if
sql = sql & " forfatter = " & RS_edit_personel("id") & ""
rsnews.open sql, conn_admin, 1, 3
Avatar billede litop Nybegynder
10. oktober 2004 - 17:06 #9
Du er en dygtig koder :o) Det virker perfekt :o)
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