Avatar billede zubmit Nybegynder
31. december 2003 - 12:22 Der er 14 kommentarer og
1 løsning

En fejl når man vil logge ind

Når man vil logge ind og skriver det forkerte password så kommer man tilbage til login-siden så man skal men når man skriver det rigtige så kommer denne fejl frem:

ADODB.Recordset (0x800A0CC1)
Elementet kan ikke findes i den samling, der svarer til det anmodede navn eller ordenstal.
/asp/Tagwall/Beskyttet.asp, line 12.

Og asp teksten:
<%
' vi starter med at oprette forbindelse til vores database
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath("tagwall.mdb")
Conn.Open DSN
' så henter vi vores inputs fra brugeren, som vi definerer i variabler og trimmer den
Dim strBrugernavn, strAdgangskode
strBrugernavn = Trim(Replace(Request.Form("Admin")," ' "," " ))
strAdgangskode = Trim(Replace(Request.Form("Pass")," ' "," " ))

' herefter opbygger vi vores SQL-sætning og får vores databaseforbindelse til at udføre den.
SQL = "SELECT * FROM Admin where Admin = '" & strBrugernavn & "' AND Pass = '" & strAdgangskode & "'"
Set rs = Conn.Execute(SQL)

' Hvis brugeren fandtes i databasen
If Not (rs.BOF Or rs.EOF) Then
Session("ID") = rs("ID")
Session("Brugeradgang") = True
Response.redirect "Beskyttet.asp"

Else

' Hvis brugeren ikke fandtes i databasen
Response.redirect "Admin.asp"
End If

' og for god ordens skyld lukker vi lige for databaseorbindelsen
Conn.Close
Set Conn = Nothing
%>
Avatar billede zubmit Nybegynder
31. december 2003 - 12:23 #1
Nå ja og linje 12 det er ved:
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
Avatar billede michael_stim Ekspert
31. december 2003 - 12:27 #2
set conn = server.CreateObject("ADODB.CONNECTION")
DSN = "PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA SOURCE=Databasens sti og navn"

conn.Open DSN
Avatar billede eagleeye Praktikant
31. december 2003 - 12:28 #3
Er d  sikker på det er linje 12?
Avatar billede eagleeye Praktikant
31. december 2003 - 12:29 #4
Det lyder mere som en linje hvori der indgår et recordset.
Typisk kommer fejlen fordi man skriver en kolonne som ikke findes i databasen i sit recordset:
str = rs("findesikke")
Avatar billede zubmit Nybegynder
31. december 2003 - 12:31 #5
Den siger det er i linje 12. Hvor skal jeg så sætte det der str = rs("findesikke")????
Avatar billede erikjacobsen Ekspert
31. december 2003 - 12:36 #6
Har du et felt, der hedder ID ?
Avatar billede eagleeye Praktikant
31. december 2003 - 12:38 #7
Det skal ikke indsættes. Det var et eksempel som kan give den fejl hvis du bruger en kolonne som ikke findes i din database...
Avatar billede zubmit Nybegynder
31. december 2003 - 12:41 #8
Nå men jeg har tjekket at både Admin er stavet rigtigt i databasen og Pass.
Hvad kan jeg evt. gøre?
Avatar billede eagleeye Praktikant
31. december 2003 - 12:44 #9
Det er ikke i selve SQL sætningen problemet er...
Svare på  erikjacobsen spørgsmål.
Avatar billede eagleeye Praktikant
31. december 2003 - 12:45 #10
Dette er måske et dumt spørgsmål ;) men er det koden fra den rigtige fil?
Og i så flad er det hele koden du har vist?
Avatar billede zubmit Nybegynder
31. december 2003 - 12:48 #11
Hmm ... nu når du siger det..
Flovt af mig *rødmer*
<%
' vi starter med at oprette forbindelse til vores database
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath ("Tagwall.mdb")
Conn.Open DSN

' og så finder vi dataene, hvor værdien af feltet ID = værdien i vores Session("ID")
SQL = "Select * FROM Admin WHERE ID=" & Session("ID")
Set rs = Conn.Execute(SQL)

' nu kan vi så lave vores udtræk
Response.Write "Hej " & rs("Navn") & "," & "<br>" & "Velkommen til din personlige side. Du er logget på med brugernavnet: " & rs("Brugernavn")

' og for god ordens skyld lukker vi lige for databaseorbindelsen
Conn.Close
Set Conn = Nothing
%>

Det er vdst den rigtige
Avatar billede eagleeye Praktikant
31. december 2003 - 12:49 #12
Så det denne linje:
Response.Write "Hej " & rs("Navn") & "," & "<br>" & "Velkommen til din personlige side. Du er logget på med brugernavnet: " & rs("Brugernavn")


Har du to kolonne som hedder:  navn  og  brugernavn  ?
Avatar billede eagleeye Praktikant
31. december 2003 - 12:53 #13
Hvis du i din tabel admin ikke har en eller begge kolonne navne så kommer den fejl du får. Så vidt jeg kan se ud fra den anden kode du har vist er brugernavnet i kolonnen admin, men det kun et gæt ;)
Så  linjen vil være:

Response.Write "Hej " & rs("Navn") & "," & "<br>" & "Velkommen til din personlige side. Du er logget på med brugernavnet: " & rs("admin")
Avatar billede zubmit Nybegynder
31. december 2003 - 12:55 #14
HeHe nu passer det :D tak for hjælpen og kom med et svar eagleeye
Avatar billede eagleeye Praktikant
31. december 2003 - 12:57 #15
;) ok her et svar

Godt Nytår
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