Avatar billede dm013 Nybegynder
18. januar 2002 - 16:08 Der er 6 kommentarer og
2 løsninger

Hvad mangler jeg her for at trække \"Username\" med over til de efterfølgende sider ?

<%
\' Hvis der er blevet trykket på knappen \"Login\"
If Request.Form(\"Action\") = \"Login\" Then
\' Her forberedes de indtastede værdier til validering
strUID = Trim(Replace(Request.Form(\"Brugernavn\"),\"\'\",\"\"))

strPWD = Trim(Replace(Request.Form(\"Adgangskode\"),\"\'\",\"\"))

\' Hvis der er skrevet noget i både brugernavn og adgangskode
If Len(strUID) > 0 And Len(strPWD) > 0 Then
   
\' DSNLess forbindelse til databasen
Set myConn = Server.CreateObject(\"ADODB.Connection\")
myConn.Open \"DRIVER={Microsoft Access Driver (*.mdb)};DBQ=\" & Server.MapPath(\"madkulten.mdb\")

\' Opbygning af SQL streng
strSQL = \"SELECT UserID FROM Users\"&_
\" WHERE (Username = \'\" & strUID & \"\')\"&_
\" AND (Password = \'\" & strPWD & \"\')\"

Set rs = myConn.Execute(strSQL)
If Not (rs.BOF Or rs.EOF) Then
\' Hvis brugeren fandtes i databasen
intUID = rs(\"UserID\")
           
Else
\' Hvis brugeren ikke fandtes i databasen
strERR = \"Du blev ikke godkendt af systemet\"
End If

\' Rydder op i  connection objekt
myConn.Close
Set myConn = Nothing

If Len(intUID) Then
\' Hvis variablen intUID indeholder en værdi sættes denne i sessionen \"UserID\" og brugeren bliver sendt videre
Session(\"UserID\") = intUID
   
Response.Redirect(\"XXX.asp\")
End If
Else
\' Hvis der ikke var angivet brugernavn og adgangskode
strErr = \"Du skal skrive både brugernavn og adgangskode\"
End If

If Len(strErr) > 0 Then
\' Her laves fejlmeddelsen om til rød skrift
strErr = \"<p><font color=red>\" & strErr & \"</font></p>\"
End If
End If
%>
Avatar billede misbruger Nybegynder
18. januar 2002 - 16:35 #1
<%
\' Hvis der er blevet trykket på knappen \"Login\"
If Request.Form(\"Action\") = \"Login\" Then
\' Her forberedes de indtastede værdier til validering
strUID = Trim(Replace(Request.Form(\"Brugernavn\"),\"\'\",\"\"))

strPWD = Trim(Replace(Request.Form(\"Adgangskode\"),\"\'\",\"\"))

\' Hvis der er skrevet noget i både brugernavn og adgangskode
If Len(strUID) > 0 And Len(strPWD) > 0 Then
   
\' DSNLess forbindelse til databasen
Set myConn = Server.CreateObject(\"ADODB.Connection\")
myConn.Open \"DRIVER={Microsoft Access Driver (*.mdb)};DBQ=\" & Server.MapPath(\"madkulten.mdb\")

\' Opbygning af SQL streng
strSQL = \"SELECT UserID, UserName FROM Users\"&_
\" WHERE (Username = \'\" & strUID & \"\')\"&_
\" AND (Password = \'\" & strPWD & \"\')\"

Set rs = myConn.Execute(strSQL)
If Not (rs.BOF Or rs.EOF) Then
\' Hvis brugeren fandtes i databasen
intUID = rs(\"UserID\")
           
Else
\' Hvis brugeren ikke fandtes i databasen
strERR = \"Du blev ikke godkendt af systemet\"
End If

\' Rydder op i  connection objekt
myConn.Close
Set myConn = Nothing

If Len(intUID) Then
\' Hvis variablen intUID indeholder en værdi sættes denne i sessionen \"UserID\" og brugeren bliver sendt videre
Session(\"UserID\") = intUID
Session(\"UserName\") = rs(\"UserName\")
   
Response.Redirect(\"XXX.asp\")
End If
Else
\' Hvis der ikke var angivet brugernavn og adgangskode
strErr = \"Du skal skrive både brugernavn og adgangskode\"
End If

If Len(strErr) > 0 Then
\' Her laves fejlmeddelsen om til rød skrift
strErr = \"<p><font color=red>\" & strErr & \"</font></p>\"
End If
End If
%>

På de andre sider skriver du bare
<%
UserName = Session(\"UserName\")
Response.Write UserName
%>
Avatar billede dm013 Nybegynder
18. januar 2002 - 17:04 #2
Det virker Ikke !!!, Den logger ikke ind nu
Avatar billede dm013 Nybegynder
18. januar 2002 - 17:13 #3
Grunden til fejlen er denne:

Session(\"UserName\") = rs(\"UserName\")
Avatar billede larsen Nybegynder
18. januar 2002 - 17:37 #4
Prøv at starte scriptet med :
Response.buffer=true
Avatar billede dm013 Nybegynder
18. januar 2002 - 18:16 #5
Jeg kan godt få den til at skrive navnet øverst på siden men ikke nede i den celle hvor jeg vil have det til at stå ???
Avatar billede dm013 Nybegynder
18. januar 2002 - 18:28 #6
UserID skriver den i et felt Hvis Jeg beder om det, men ikke UserName
Avatar billede larsen Nybegynder
18. januar 2002 - 19:10 #7
Prøv at lave din select-sætning om så du har
\"select * from\" osv.

Er du sikker på at feltet UserName ikke er tomt ??
Avatar billede coltau Juniormester
19. januar 2002 - 23:17 #8
Prøv med linien:

Session(\"UserName\") = strUID

i stedet for linien:

Session(\"UserName\") = rs(\"UserName\")

da RS(\"username\") ikke er med i RecordSettet og at recordsettet er lukket på det tidspunkt.
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