Avatar billede zeusdk Nybegynder
03. februar 2003 - 13:52 Der er 2 kommentarer og
1 løsning

Sql-fejl

Hej

Jeg har følgende script, hvor rs.EOF altid bliver true lige meget om den rekord, som der søges efter, findes eller ikke findes. (Og jeg har har checket efter i databasen)

SQL-output:
select * FROM users WHERE email = 'test@test.dk' and aktiveringskode = '5426'

Database:
Både email og aktiveringskode er af typen tekst.

Kode:
Set SearchDB=Server.CreateObject("ADODB.Connection")
    SearchDB.Open ("PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA SOURCE=" + Server.MapPath("/db/users2.mdb"))

    strSQL="select * FROM users WHERE email = '" & Request.Form("email") & "' and aktiveringskode = '" & Request.Form("aktiveringskode") & "'"
    set rs = myConn.execute(strSQL)
    myConn.close
   
    if rs.EOF then
        Session("besked") = "Den angivede email-adresse og aktiveringskode passer ikke sammen - indtast venligst begge igen."
        response.redirect("opretBruger2.asp")
    else   
        strSQL="update users set status = '2' where email = '" & Request.Form("email") & "'"
        set rs = myConn.execute(strSQL)
          myConn.close
        sendEmailToAdmin()
        response.redirect("opretBruger3.asp")     
    end if
Avatar billede zeusdk Nybegynder
03. februar 2003 - 13:54 #1
Ups - den sidste "myConn.close" (4. sidste linie) skal du blot se bort fra.
Avatar billede zeusdk Nybegynder
03. februar 2003 - 14:29 #2
Jeg har nu ændret i koden, men resultatet er desværre det samme.

if Request.ServerVariables("REQUEST_METHOD") = "POST" then

    Set myConn=Server.CreateObject("ADODB.Connection")
    myConn.Open ("PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA SOURCE="+server.Mappath("/db/users2.mdb"))
   
    strSQL="select * FROM users WHERE email = '" & Request.Form("email") & "' and aktiveringskode = '" & Request.Form("aktiveringskode") & "'"
    response.write "<br>" & strSQL
    set rs = myConn.execute(strSQL)
    myConn.close
   
    if rs.EOF then
        Session("besked") = "Den angivede email-adresse og aktiveringskode passer ikke sammen - indtast venligst begge igen."
        response.redirect("opretBruger2.asp")
    else   
        strSQL="update users set status = '2' where email = '" & Request.Form("email") & "'"
        set rs = myConn.execute(strSQL)
        sendEmailToAdmin()
        response.redirect("opretBruger3.asp")     
    end if

end if
Avatar billede zeusdk Nybegynder
03. februar 2003 - 14:50 #3
Jeg fandt selv ud af det :-)
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