Avatar billede jagtjensen Nybegynder
10. december 2004 - 19:04 Der er 11 kommentarer og
1 løsning

slet indlæg via dato.

Jeg bruger følgende til at trække en dato og en begivenhed fra database,


<%
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath ("kalender.mdb")
Conn.Open DSN
strSQL = "Select * from test Order By Dato"
' Udfør forespørgsel (rs indeholder nu resultatet)
Set rs = Conn.Execute(strSQL)

' Gennemløb Recordset (rs) med en løkke
Do
Response.Write "<b>" & "<FONT COLOR=ff0000>"&rs("Dato") & "&nbsp;</FONT></b>"

Response.Write "</b>" & rs("Beskrivelse") & "</b>"


Response.Write "<b>" & "<FONT COLOR=ff0000>"&rs("underskrift") & "&nbsp;</FONT></b></tr>"

' Gå til næste Record i rs
rs.MoveNext

' Fortsæt indtil rs er gennemløbet (EOF = End Of File)
Loop While Not rs.EOF

' Luk databaseforbindelse
Conn.Close
Set Conn = Nothing
%>

Jeg vil gerne have den til at slette begivenheden når datoen er passeret, har prøvet mage måder men uden held
Er der en af jer der har løsningen? ( hvis du også gider sætte koden ind i min kode, er der 200 point.)
Avatar billede baitianlong Nybegynder
10. december 2004 - 19:36 #1
Hvis feltet Dato er et datetime felt, burde dette virke :)

<%
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath ("kalender.mdb")
Conn.Open DSN
strSQL1 = "DELETE FROM test WHERE DateDiff (""n"", DATO, Now()) > 1"
Conn.Execute(strSQL1)
strSQL = "Select * from test Order By Dato"
' Udfør forespørgsel (rs indeholder nu resultatet)
Set rs = Conn.Execute(strSQL)

' Gennemløb Recordset (rs) med en løkke
Do
Response.Write "<b>" & "<FONT COLOR=ff0000>"&rs("Dato") & "&nbsp;</FONT></b>"

Response.Write "</b>" & rs("Beskrivelse") & "</b>"


Response.Write "<b>" & "<FONT COLOR=ff0000>"&rs("underskrift") & "&nbsp;</FONT></b></tr>"

' Gå til næste Record i rs
rs.MoveNext

' Fortsæt indtil rs er gennemløbet (EOF = End Of File)
Loop While Not rs.EOF

' Luk databaseforbindelse
Conn.Close
Set Conn = Nothing
%>
Avatar billede baitianlong Nybegynder
10. december 2004 - 19:37 #2
DATO skal være Dato, ikke store bogstaver hele vejen...
Avatar billede jagtjensen Nybegynder
10. december 2004 - 19:44 #3
Jeg får følgende fejl


Fejltype:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E10)
[Microsoft][ODBC Microsoft Access-driver] Too few parameters. Expected 1.
/test/side.asp, line 7
Avatar billede baitianlong Nybegynder
10. december 2004 - 19:51 #4
Prøv med:

DELETE FROM test WHERE DateDiff (n, DATO, Now()) > 1

eller

DELETE FROM test WHERE DateDiff ('n', DATO, Now()) > 1
Avatar billede jagtjensen Nybegynder
10. december 2004 - 20:02 #5
Det sidste forslsg kører, men den skal først slette når dagen er slut, kan du også fikse det??
Avatar billede baitianlong Nybegynder
10. december 2004 - 20:16 #6
skift 'n' ud med 'd' Så er den der :)
Avatar billede jagtjensen Nybegynder
10. december 2004 - 20:25 #7
Nej, det var en dag for meget, oprettet d. 10-12 bliver først slettet d. 12-04 ??
Avatar billede baitianlong Nybegynder
10. december 2004 - 20:35 #8
Det bliver slettet efter 4 måneder minus to dage ??
Avatar billede jagtjensen Nybegynder
10. december 2004 - 20:38 #9
Nej, det var en dag for meget, oprettet d. 10-12 bliver først slettet d. 12-12 ??

Undskyld det var en tastefejl 12-12
Avatar billede baitianlong Nybegynder
10. december 2004 - 20:45 #10
nårh ja selvfølgelig. Den er jo > 1, den skal være > 0

dumme mig :)
Avatar billede jagtjensen Nybegynder
10. december 2004 - 20:50 #11
Perfekt
Avatar billede jagtjensen Nybegynder
10. december 2004 - 20:54 #12
Jeg kan ikke se om du har fået point, der stadi at jeg har dem ude!!
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