Ett enkelt login system för olika nivåer för olika användare
Istället föt att använda en sådan här variant:
<% If NOT Session("user") = "user" Then
Response.Redirect "login.asp"
Else %>
<!-- Skyddad sida -->
<% End If %>
Är det helt galet att använda sig av:
<% Select Case sSessionUsr
Case ""
Server.Execute "default.asp"
Case "klass1"
Server.Execute "klass1.asp"
Case "klass2"
Server.Execute "klass2.asp"
End Select %>
Finns det några för och emot i dom olika fallen jag inte tänker på...?
Det beror på om du använder det på rätt sätt. Jag antar att klass 1, 2osv. inte är sådana som har någon behörighet för isf förstår jag inte riktigt hur du tänker...
<% Select Case sSessionUsr
Case ""
Response.Redirect "default.asp"
Case "klass1"
Response.Redirect "klass1.asp"
Case "klass2"
Response.Redirect "klas2.asp"
End Select %>
Jo, så här då kanske. Jag har ändrat till Response.Redirect istället för Server.Execute. Det var bara som exempel så det spelar ingen roll...
Så om den "användare" i databsen inte har användning för annan "användarklass" än "klass2" då kommer man helt enkelt inte in på sidan. Det finns ju naturligvis en "klass" koll i början på varenda sida.... Precis som du skrev.
Det här blev rörigt... Jag kanske inte har tänkt klart riktigt...
Trexter-> Det är meningen att att man skall kunna logga in på olika "nivåer", olika rättigheter till olika sidor i ett "system". T.ex Administratör har rättigheter till alla sidor och kan styra databasen. Klass1 har rättigheter som medlem/användare och kan ändra sina egna uppgifter, ändra sina egna lager, sidor o.s.v...
Systemet är utformat så att jag använder mig av "Select Case" och "Server.Execute" för att anropa "?.asp" sidor till en "mall" som jag använder mig av.
Min fråga var nog lite för enkel, kanske dum? Jag undrar om det är bättre att använda sig av "If Then Else" eller "Select Case" eftersom jag antagligen kommer att få kolla vad för "nivå rättigheter" användaren har, på varje sida [som är skyddad].
Är "Server Execute" krävande för servern? Mer krävande jämfört om man bygger fördiga sidor som man "redirect":ar till...?
Om du kör på response.redirect måst du verkligen se till att ha en behörighetskontroll på de sidorna, annars kan man ju bara spara adressen och logga in direkt där.
Kör du server.execute så är det också bra att ha men inte lika sårbart. (Rätta mig om jag har fel)
Ang If-satser eller select case så är väl select case snyggae och mer förståeligt kodat.
377 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a