Avatar billede crapmaster Nybegynder
24. februar 2003 - 20:23 Der er 7 kommentarer og
1 løsning

En db der skal skrive en ny dato vær gang man logger ind

Her kommer spm så....
Hvordan laver man en udløbs dato som stiger hvær gang en bruger logger sig ind med brugernavn & password, så vis han ikke har været logget på i 2 månder bliver han auto slettet.
Jeg har en table der opdater værgang en bruger logger på, den skriver en ny dato vær gang.
<% -- Min kode -- %>

<%

strBrugernavn = Trim(Replace(request("Brugernavn"),"'","''" ))
strAdgangskode = Trim(Replace(request("Adgangskode"),"'","''" ))

Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("/medlemsliste/medlemmer.mdb")
Conn.Open DSN

strSQL = "SELECT * FROM [user] WHERE Brugernavn = '" & strBrugernavn & "' And Adgangskode = '" & strAdgangskode & "'"
Set rs = Conn.Execute(strSQL)

If Not rs.EOF Then
    Session("ID") = rs("ID")
    Session("Brugeradgang") = "JA"
    Session("Brugernavn") = rs("Brugernavn")
   
    SQL = "UPDATE [user] SET Dato2 = #" & Now() & "# WHERE ID = " & rs("ID")
    Conn.Execute(SQL)

    rs.Close
    Conn.Close

    Response.redirect "index2.asp"
Else
    Response.Write "Ikke fundet noget"
    ' Hvis brugeren ikke fandtes i databasen
    Response.redirect "index.asp"
End If


rs.Close
Conn.Close

%>

//Håber i kan hjælpe mig
Avatar billede the_bma_man Nybegynder
25. februar 2003 - 12:38 #1
Kan du ikke bare lave en lille side, der sletter alle dem, hvor Dato2 er ældre end idag - 2mdr?

Lav en stump kode (det bedste er at lave det direkte i DB, men hvis du ikke har adgang hertil), evt. i OnApplication_Start der sletter dem.
Avatar billede midas_dk Nybegynder
25. februar 2003 - 17:45 #2
If Not rs.EOF Then
    Session("ID") = rs("ID")
    Session("Brugeradgang") = "JA"
    Session("Brugernavn") = rs("Brugernavn")
   
    SQL = "UPDATE [user] SET Dato2 = #" & DateAdd("m",2,Now()) & "# WHERE ID = " & rs("ID")
    Conn.Execute(SQL)

    rs.Close
    Conn.Close

    Response.redirect "index2.asp"
Else
    Response.Write "Ikke fundet noget"
    ' Hvis brugeren ikke fandtes i databasen
    Response.redirect "index.asp"
End If
Avatar billede the_bma_man Nybegynder
25. februar 2003 - 19:46 #3
Det var jo nok ikke det han tænkte på.
Han har jo en dato i dag.
Problemet, som jeg læser det, er at få slettet dem, hvor datoen er for gammel.
Avatar billede the_bma_man Nybegynder
25. februar 2003 - 19:47 #4
Den OnApplication_Start function du skal have, skal gøre noget i retning af:
SQL = "DELETE FROM [user] WHERE Dato2 < #" & DateAdd("m",-2,Now()) & "#"
Conn.Execute(SQL)
Avatar billede crapmaster Nybegynder
27. februar 2003 - 07:45 #5
Vis jeg har læst det som du skriver "The Bma man"

Det er jo sådan at den dato jeg har i ( Dato ) sig retter sig selv efter hvornår man sidt har været logget ind, den kode du skriver her, Er det så vis man ikke har været logget ind i 2 mådner eller hvad.....
Avatar billede the_bma_man Nybegynder
27. februar 2003 - 16:05 #6
jep - så bliver man slettet.
Når den dato, jeg har (som jo kommer hver gang, jeg logger på) er mindre
to måneder fra i dag - ja så er det GoodBejRuth.
Avatar billede crapmaster Nybegynder
02. marts 2003 - 03:35 #7
Jeg lukker dette spørsmål da ingen kunne hjælpe mig...
Avatar billede the_bma_man Nybegynder
02. marts 2003 - 19:40 #8
Nå ja - men skulle det _ikke_ være en anden gang!
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