Avatar billede rashid Praktikant
15. januar 2004 - 13:34 Der er 9 kommentarer og
1 løsning

hjælp til fejl !

hvad går galt ??
pls help.

fejlen:

ADODB.Connection error '800a0e78'
Operation is not allowed when the object is closed.
/news/admin/login.asp, line 89

scriptet:
<% if mode = "login" then
Set myConn = Server.CreateObject("ADODB.Connection")
DSN = DSN & "DBQ=" & Server.MapPath ("../../../db/nyheder.mdb")
               
strSQL = "SELECT * FROM admin where brugernavn = '" & Request.form("brugernavn") & "'"                        
Set rs = myConn.Execute(strSQL)
If rs.BOF Or rs.EOF Then
                                Response.Redirect("login.asp?error=Ingen bruger med det navn!")
end if
           
            if rs("password") = Request.form("password") then
                session("brugernavn") = rs("brugernavn")
                session("id") = rs("id")
                session("login") = yes
                Response.Redirect("oversigt.asp")
            else

Response.Redirect("login.asp?error=Du har indtastet forkert password!")
            end if
                   
   
myConn.Close
Set myConn = Nothing
end if %>
Avatar billede rashid Praktikant
15. januar 2004 - 13:38 #1
linie 89:
Set rs = myConn.Execute(strSQL)
Avatar billede thesurfer Nybegynder
15. januar 2004 - 13:41 #2
Du mangler en "myConn.Open DSN"..
dvs:

Set myConn = Server.CreateObject("ADODB.Connection")
DSN = DSN & "DBQ=" & Server.MapPath ("../../../db/nyheder.mdb")
myConn.Open DSN 
strSQL = "SELECT * FROM admin where brugernavn = '" & Request.form("brugernavn") & "'"
Avatar billede nute Nybegynder
15. januar 2004 - 13:41 #3
du mangler at åbne din connection. I linjen *før* din

Set rs = myConn.Execute(strSQL)

skriver du

myConn.Open DSN
Avatar billede thesurfer Nybegynder
15. januar 2004 - 13:42 #4
nute> du er alt for langsom ;-)
Avatar billede nute Nybegynder
15. januar 2004 - 13:46 #5
jeg trykket på den forkerte knap på min mus ;-)
Avatar billede rashid Praktikant
15. januar 2004 - 13:56 #6
så får jeg denne fejl:
Microsoft VBScript compilation error '800a0401'

Expected end of statement

/news/admin/login.asp, line 87

strSQL = "SELECT * FROM admin where brugernavn = '" & Request.form("brugernavn") & "'"                                         myConn.Open DSN
-------------------------------------------------------------------------------------------------^
Avatar billede thesurfer Nybegynder
15. januar 2004 - 13:57 #7
Gad vide hvor folk smutter hen, når de har oprettet et spm.. :-)
Min løsningen kom 3 minutter og 12 sekunder, efter rashids sidste indlæg.. ;-)
Avatar billede thesurfer Nybegynder
15. januar 2004 - 13:58 #8
Det skal jo ikke stå på 1 linie :)

2 linier:

strSQL = "SELECT * FROM admin where brugernavn = '" & Request.form("brugernavn") & "'"
myConn.Open DSN
Avatar billede thesurfer Nybegynder
15. januar 2004 - 14:01 #9
Det ville også være en god ide at bruge:

Option Explicit (som den første linie i dine filer, og definer ALLE dine variabler)

dim brugernavn (her defineres "brugernavn")
brugernavn = replace(request.form("brugernavn"), "'", "")

strSQL = "SELECT * FROM admin where brugernavn = '" & brugernavn & "'"

Option Explicit + definerering (sikker forkert ordvalg) af variabler = fang stavefejl med det samme!
Avatar billede thesurfer Nybegynder
15. januar 2004 - 14:02 #10
hehe.. det var da også forkert rækkefølge, du har dem :)

Jeg skrev:

Set myConn = Server.CreateObject("ADODB.Connection")
DSN = DSN & "DBQ=" & Server.MapPath ("../../../db/nyheder.mdb")
myConn.Open DSN 
strSQL = "SELECT * FROM admin where brugernavn = '" & Request.form("brugernavn") & "'"

Husk der med brugernavn..
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