Her er også et meget simpelt script, hvis det ikke er en hel række af mennesker der skal kunne logge ind... ------------------------ Indtast Brugernavn og password: <br><br> <form method="post" action="login.asp?action=login"> Login:<br> <input type="text" name="login" size="20"> <br><br> Password:<br> <input type="password" name="password" size="20"> <br><br> <input type="submit" value="Log ind"> </form>
<!-------- Login thingy ----------> <% If request("action") = "login" then
If request.Form("login") = "admin" AND Request.Form("password") = "admin" Then Session("login") = "JA" Session.Timeout = 30 Response.Redirect("beskyttet-side.asp")
Else
Response.Write "<font color='red'>Du har skrevet forkert brugernavn eller password.</font>" End If
End If %>
------------ På den beskyttede side, smider du bare et lille tjek ind øverst, som ser således ud:
<% If Session("login") <> "JA" Then Response.Redirect("../login.asp") End If %>
Fint nok. Det kan det script jeg linkede til sagtens klare, men du siger du har prøvet? Fik du nogen fejl, eller noget? Eller er der noget du ikke helt forstår ved scriptet? Så bare skriv løs, så skal jeg se om jeg kan forklare/fixe scriptet til dig, så det virker ;)
Synes godt om
Slettet bruger
11. maj 2006 - 20:15#10
Forstod nok ikke scripet..
Synes godt om
Slettet bruger
11. maj 2006 - 20:16#11
Eller jeg kan ikke få den til at arbejde med min database
Jeg ved ikke om du har fundet et login script, men ellers har jeg lige prøvet at gøre det her script klar til din database, da jeg kiggede et det andet indlæg du har skrevet her på experten, hvor du skal oprette brugere. Men prøv det her:
<% ' Hvis der er blevet trykket på knappen "Login" If Request.ServerVariables("REQUEST_METHOD") = "POST" Then ' Her forberedes de indtastede værdier til validering strUID = Trim(Replace(Request.Form("Brugernavn"),"'","")) strPWD = Trim(Replace(Request.Form("Kodeord"),"'",""))
' 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("/db/brugersystem.mdb")
' Opbygning af SQL streng strSQL = "SELECT * FROM bruger WHERE (Brugernavn = '" & strUID & "') AND (Kodeord = '" & strPWD & "')"
Set rs = myConn.Execute(strSQL) If Not (rs.BOF Or rs.EOF) Then ' Hvis brugeren fandtes i databasen intUID = rs("BrugerID") Else ' Hvis brugeren ikke fandtes i databasen strERR = "Du blev ikke godkendt af systemet" End If
' Rydder op i vores 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("din_login_side.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 %> <html><head> <title>Login script</title> </head><body>
Er det ikke login.asp? Og beskyttet.asp og den anden side skal jeg stadigvæk bruge ikke?
Synes godt om
Slettet bruger
12. maj 2006 - 11:28#14
Hver gang jeg prøver og skrive kodeord og brugernavn og trykker login så siger den at siden ikke kan vises. http://www.leol.dk/login.asp Brugernavn: Admin Kodeord: Admin
Men siden du ikke ser fejlen son mig, er det muligt du har "Vis meddelser om uskadelig HTTP fejl" slået til. Du kan slå dette fra ved i din browser at gå op i Funktioner > Internet Egenskaber > Advanceret (faneblad) > Og find så "Vis meddelser om uskadelig HTTP fejl" og fjern fluebenet ud for den.
Ang. den fejl du får, tror jeg det er den her linie det drejer sig om.
intUID = rs("BrugerID")
Hvad hedder dit ID felt i bruger tabellen, i databasen?
Synes godt om
Slettet bruger
12. maj 2006 - 18:14#17
Den hedder bare id :-)
Synes godt om
Slettet bruger
12. maj 2006 - 18:17#18
Den hedder bare id :-) Det virker.. Giv Kast et svar
Synes godt om
Slettet bruger
12. maj 2006 - 18:22#19
Kan ikke også lige forklare hvordan man laver scripet i andre koder jeg allerede har lavet?
Synes godt om
Slettet bruger
12. maj 2006 - 18:25#20
Altså sådan jeg forstår det er man skal oprette en masse nye sider?
Jeg kan se du har en login form på din forside. Ændre action til action="login.asp". I login scriptet skal du bare redirect'e tilbage til forsiden f.eks. Response.Redirect("http://www.leol.dk")
I stedet for:
Response.Redirect("din_login_side.asp")
Men læg mærke til at, inden der bliver redirectet i login scriptet, bliver en Session sat lig med dit brugerid. Så kan du bare tjecke på det, på alle dine andre sider og vise noget forskelligt, fra hvis du ikke er logget ind. Det kan du gøre sådan her:
If isEmpty(Session("UserID")) Then 'Det her ser folk hvis de ikke er logget ind. Else 'Det her ser folk hvis de ER logget ind. End Id
Hvis du har nogle sider, som folk skal være logget ind for at se. Kan du f.eks. placere det her i toppen af dine "beskyttede" sider.
If IsEmpty(Session("UserId")) Then Response.Redirect("login.asp") End If
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.