Avatar billede mjall0w Nybegynder
21. januar 2003 - 18:48 Der er 11 kommentarer og
1 løsning

Login Access, og ID

Hej "eksperter" :)
Jeg har en side hvor jeg ska bruge sådan et script hvor den sender brugeren videre til en anden side hvis han ikke har rettigheder til den.. Jeg har allerede et ganske almindeligt script med det, men jeg har fundet ud af at hvis brugeren bare er logget ind kan han ændre alles andre's profiler.. Det jeg mangler er sådan at brugeren kun kan komme ind på sin egen profil og rette, han access_level er "user", også sådan at Administratoren kan komme ind på hans private sider, hvor kan oprette nyheder osv..
Håber i kan hjælpe mig :)

//Mjall0w-
Avatar billede eagleeye Praktikant
21. januar 2003 - 19:16 #1
Hvis du gemmer access_level i session samme med brugernavet eller brugerIDet kan du lave tjekke så den kun tillader bestemte typer af brugere:

if session("access_level") = "admin" then
  'Privat side for administrator her


else
  'Har ikke access til denne side send vidre til defaul siden
  Response.redirect "default.asp"
end if
Avatar billede mjall0w Nybegynder
22. januar 2003 - 19:11 #2
Det er det jeg ska bruge på min administrator side, også under else, ska mine html gerne stå right ? ?

Men nu mangler jeg sådan at hvis en tilfældig bruger prøver at rette på andre end hans andre profiler feks ved at skrive retbruger.asp?id=22 så ska han sendes videre til forsiden.. ?

//Mjall0w-
Avatar billede eagleeye Praktikant
22. januar 2003 - 19:30 #3
Er retbruger.asp en fil som brugeren kan rette i sin profil??

Hvis ja så: Hvorfor gemmer du ikke bare userID i session så du fri for at havde sider hvor du kan overføre brugernes id via querystrings.:

Når man logger ind:

Session("userID") = rs("id")

Så kan du på din retbruger.asp side bruger Session("userID") hvor du bruger Request.QueryString("id") så kan en bruger kun rette signe egne data.
Avatar billede mjall0w Nybegynder
23. januar 2003 - 14:50 #4
Jeg kan ikke helt rigtigt få det til at virke.. Siden kan ikke vises min script ser følgende ud:

if session("userid") = Request.QueryString("id") then

<Alle mine html koder>

else
response.write "Du ska være logget ind"
end if

Og i mit login er min session følgende sted:
Set rs = myConn.Execute(strSQL)
        If Not (rs.BOF Or rs.EOF) Then

            intID = rs("ID")
            strlevel = rs("Access_Level")
            Session("ID") = rs("id")

//Mjall0w-
Avatar billede mjall0w Nybegynder
26. januar 2003 - 12:34 #5
Ingen der har lyst til at svare ?

//Mjall0w-
Avatar billede eagleeye Praktikant
26. januar 2003 - 12:39 #6
Hvis det ser ud som du skriver:

Så bruger du Session("userid") her

if session("userid") = Request.QueryString("id") then


Men gemmer ID som Session("ID"):

Session("ID") = rs("id")
Avatar billede mjall0w Nybegynder
26. januar 2003 - 21:39 #7
Session("userid") Hvor får jeg den fra ?
Jeg kan kun se at jeg har en session der hedder "id" er det rigtigt , og den ser vel sådan her ud Session("ID") = rs("id") ?
Avatar billede eagleeye Praktikant
26. januar 2003 - 22:59 #8
Jeg går ud fra dette er et udsnit fra dit login script:

Set rs = myConn.Execute(strSQL)
        If Not (rs.BOF Or rs.EOF) Then

            intID = rs("ID")
            strlevel = rs("Access_Level")
            Session("ID") = rs("id")    <------ Her gemmes brugeres unikke ID


På alle de andre sider kan du bruge Session("id") for den pågældene bruger og du kan tjekke på om den er tom så er folk ikke logget ind..:


if Session("id") then

<Alle mine html koder>

else
response.write "Du ska være logget ind"
end if
Avatar billede mjall0w Nybegynder
27. januar 2003 - 15:38 #9
Okay, tror nogenlunde jeg har forstået det nu :)

Men på de sider hvor den ska lave et tjek ska der stå følgende kode:

if session("access_level") = "admin" then

<MineHTMLkoder>

<\MineHTMLkoder>
<%
Else
Response.redirect "ikkeloggetind.asp"
End if
%>


Er det rigtigt ?
Avatar billede eagleeye Praktikant
27. januar 2003 - 20:53 #10
Ja den tjekke på om Session("access_level") er lig med "admin". Hvis det er en bruger som har status af admin må kan se siden.

I login scriptet står der:

strlevel = rs("Access_Level")

Der skal strlevel så ind i Session("access_level")

strlevel = rs("Access_Level")
Session("access_level") = strlevel
Avatar billede mjall0w Nybegynder
28. januar 2003 - 13:46 #11
Jeg kan Godt se idéen i det, men jeg har et problem og det er at siden ikke kan vises.

Når jeg så Fjerne scriptet virker siden godt nok..

Hva ka' problemet værre ?

//Mjall0w-
Avatar billede mjall0w Nybegynder
04. marts 2003 - 19:13 #12
Lukker..
Fandt selv et script, bare sig til hvis i vil se det..

/Mjall0w-
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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