Avatar billede guldklumpen Nybegynder
21. september 2002 - 19:09 Der er 7 kommentarer og
1 løsning

Vis brugernavn

Jeg har nogle sider der er passwordbeskyttet med en mdb database.

Databasen indeholder brugernavn, password samt fulde_navn.

Når brugeren logger sig ind, vil jeg gerne have at brugerens fulde navn står et eller andet sted på siden.

Jeg går ud fra det er noget med sessions.

Hvordan gør jeg.


Guldklumpen
Avatar billede excession Nybegynder
21. september 2002 - 19:15 #1
du skal hente hans navn fra databse med et SQL kald.. når han logger ind og du checker om brugernavnet og password findes i databsen, skal du samtidig trække hans fulde navn ud

derefter sætter du Session("fuldeNavn") = hansFuldeNavn

kom med din login kode skal vi se hvordan det sættes op
Avatar billede jnissen Nybegynder
21. september 2002 - 19:15 #2
Når folk logger ind, kan du skrive deres brugernavn i en Sessions som du selv siger. Når du så skal skrive deres brugernavn skriver du: <% response.write Session ("navn")%>
Avatar billede excession Nybegynder
21. september 2002 - 19:16 #3
hvis det kun er på én side, behøver du ikke at lave en session variable, men hvis det skal stå på alle sider eller bare flere sider er det nemmest at lave en session variable
Avatar billede guldklumpen Nybegynder
22. september 2002 - 01:46 #4
Her re koden.

Hvordan trækker jeg navnet og laver en session ?

strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("xxxxxxxx.mdb")
  Set myConn = Server.CreateObject("ADODB.Connection")
  myConn.Open strDSN
  strSQL = "SELECT * FROM users where (username = '" & Request("username") & "') and (password ='" & Request("password") & "')"
  Set ez = myConn.Execute(strSQL)
    Session("login") = "Authed"
    Response.Redirect "xxxxxx"
    EZ.Close
    RS.Close
    Conn.Close


Guldklumpen
Avatar billede excession Nybegynder
22. september 2002 - 02:00 #5
du hiver alt ud af database tabellen i forevejen kan jeg se:
strSQL = "SELECT * FROM users where (username = '" & Request("username") & "') and (password ='" & Request("password") & "')"

Så koden skal så se sådan ud:

strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("xxxxxxxx.mdb")
  Set myConn = Server.CreateObject("ADODB.Connection")
  myConn.Open strDSN
  strSQL = "SELECT * FROM users where (username = '" & Request("username") & "') and (password ='" & Request("password") & "')"
  Set ez = myConn.Execute(strSQL)
    Session("login") = "Authed"

'--- her oprettes en session variable
Session("fuldeNavn") = ez("fulde_navn ")

    Response.Redirect "xxxxxx"
    EZ.Close
    RS.Close
    Conn.Close


for at udskrive brugerens fulde navn skal du så skrive:
response.write Session("fuldeNavn")

eller

<%=Session("fuldeNavn")%>
Avatar billede guldklumpen Nybegynder
22. september 2002 - 02:08 #6
Du er en skat.

Tak for hjælpen.


Guldklumpen
Avatar billede excession Nybegynder
22. september 2002 - 02:48 #7
så lidt ;)
Avatar billede excession Nybegynder
22. september 2002 - 03:02 #8
du bør i øvrigt lave noget validering af brugernavn og password...

f.eks. sådan noget her:
(har ikke lige checket det igennem, men jeg tror det virker ok...)

' fjerner ' i teksten, da det kan misbruges
username = Trim(Replace(Request.Form("username"),"'",""))
password = Trim(Replace(Request.Form("password"),"'",""))

'checker om der overhovedet er noget i username og password, hvis der er fortsætter vi med login
If Len(username) > 0 And Len(password) > 0 then

strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("xxxxxxxx.mdb")
  Set myConn = Server.CreateObject("ADODB.Connection")
  myConn.Open strDSN
  strSQL = "SELECT * FROM users where (username = '" & Request("username") & "') and (password ='" & Request("password") & "')"
  Set ez = myConn.Execute(strSQL)

' hvis brugernavnet ikke fandtes eller password passede ikke til brugernavnet, så giver vi en brugeren en fejlmeddelelse
loginfejl=""
  IF (ez.BOF OR ez.EOF) THEN
  loginfejl= "Der er fejl i username eller password. Prøv venligst igen"
response.write loginfejl
response.end

' hvis brugernavn og password var god nok, laver vi nogle session variabler, som kan bruges på alle sider 
ELSE
  Session("fuldeNavn") = ez("fulde_navn ")
  Session("username") = ez("username")
  Session("login") = "Authed"
  END IF
end if

-- xs
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