Avatar billede dingkee Nybegynder
08. maj 2001 - 22:28 Der er 6 kommentarer og
1 løsning

Super bruger/login system

Hvordan laver man et loginsystem hvor brugeren kun har adgang til de sider der er med hans id i databasen, så man ikke bare kan gå op og rette i id i urlen???
Avatar billede madrich Nybegynder
08. maj 2001 - 22:31 #1
Lav det med en form for sessions, sådan at brugeren hænger sammen med det IP-nummer der er logget på serveren!
Avatar billede madrich Nybegynder
08. maj 2001 - 22:33 #2
Det er et simpelt login system du skal have fat i, noget ala :

<%
If Request.Form(\"Action\") = \"Login\" Then
    strUID = Trim(Replace(Request.Form(\"Brugernavn\"),\"\'\",\"\"))
    strPWD = Trim(Replace(Request.Form(\"Adgangskode\"),\"\'\",\"\"))
    If Len(strUID) > 0 And Len(strPWD) > 0 Then
        Set myConn = Server.CreateObject(\"ADODB.Connection\")
        myConn.Open \"DRIVER={Microsoft Access Driver (*.mdb)};DBQ=\" & Server.MapPath(\"brugere.mdb\")
        strSQL = \"SELECT UserID FROM Users\"&_
            \" WHERE (Username = \'\" & strUID & \"\')\"&_
            \" AND (Password = \'\" & strPWD & \"\')\"
        Set rs = myConn.Execute(strSQL)
        If Not (rs.BOF Or rs.EOF) Then
            intUID = rs(\"UserID\")
        Else
            strERR = \"Forkert Brugernavn eller adgangskode\"
        End If
        myConn.Close
        Set myConn = Nothing
        If Len(intUID) Then
            Session(\"UserID\") = intUID
            Response.Redirect(\"mail.asp\")
        End If
    Else
        strErr = \"Du skal udfylde både brugernavn og adgangskode\"
    End If
    If Len(strErr) > 0 Then
    strErr = \"<p><font color=red>\" & strErr & \"</font></p>\"
    End If
End If
%>
<html><head><title>login</title>
<link rel=\"stylesheet\" type=\"text/css\" href=\"blaa.css\"></head>
<body leftmargin=\"0\" topmargin=\"0\" bgcolor=ffffff>
<table align=center><tr><td><h2><td><a href=\"administration.asp\"><h2>Administration</h2></a></td></h2></td></tr></table>
<table align=center><tr><td width=500 class=box2 align=center>[<a href=\"index.asp?id=1\">Jeg skulle i virkeligheden nok til Blaagaards hjemmeside fremfor administrationen!</a>]</td></tr></table>
<table align=center cellspacing=10><tr>
<td width=250 class=box>
<table align=center class=box1 width=200 cellpadding=10><tr>
<td>
<form method=\"POST\" action=\"login.asp\">
  <p><font size=\"4\">Angiv brugernavn og adgangskode</font></p><%=strErr%>
  <table border=\"0\">
    <tr>
      <td width=\"50%\">Brugernavn:</td>
      <td width=\"50%\"><input type=\"text\" name=\"Brugernavn\" size=\"20\"></td>
    </tr></table></td></tr>
  <td width=250 class=box><table align=center><tr><td class=box2 width=150 align=middle>
        <tr>
      <td width=\"50%\">Adgangskode:</td>
      <td width=\"50%\"><input type=\"password\" name=\"Adgangskode\" size=\"20\">
        </td>
    </tr>

til login

så skal der bruges en \"beskyttelses\"- funktion på hver enkelt side der skal \"beskyttes\"


<%
If isEmpty(Session(\"UserID\")) Then
    Response.Redirect(\"login.asp\")
End If
%>
Avatar billede madrich Nybegynder
08. maj 2001 - 22:36 #3
Så har du ikke en streng i URL\'en der kan ændres

i din base skal du have

en kollonne der hedder:

Username

og en der hedder

Password


Avatar billede madrich Nybegynder
08. maj 2001 - 22:37 #4
Response.Redirect(\"mail.asp\")
       

sender brugeren hen til den side der så er beskyttet i dette tilfælde \"mail.asp\", men det bestemmer du jo selv!:)
Avatar billede madrich Nybegynder
08. maj 2001 - 22:41 #5
Hvis du vil have at det kun er de sider hvor sessionen, indeholder en bestemt værdi, der skal vises --> skal du i det tilfælde, gå ind og ligge en x-tra ID-værdi i en session, som du så går ind og bruger senere feks i dine If statemen´ts

ex.

Brugerrrettigheder = session(\"brugerrettighed\")

if brugerrettigheder = 2 then

response.redirect(\"siden_før\")

else

--> vis siden

sådan kan det feks arrangeres, men det afhænger helt af hvad du laver!
Avatar billede roger Nybegynder
09. maj 2001 - 02:37 #6
www.clan-aod.dk/source/brugersystem.zip

Det her virker og er nemt at passe til.
Avatar billede dingkee Nybegynder
09. maj 2001 - 15:53 #7
madrich  >> Du har skrevet helt vildt meget, men prøvede at hente den zip fil som roger henviste til og det virkede med det samme.

Så jeg har valgt at acceptere Roger\'s svar
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