webForumDet fria alternativet

sidskydd

4 svar · 539 visningar · startad av Biasse

BiasseMedlem sedan aug. 2003480 inlägg
#1

Förr när jag la in skydd på mina sidor såg det ut så här:

<%
If NOT Cint(Session("niva")) >=3 Then
Session("session") = "Du måste logga in först!"
Response.Redirect "login.asp"
ELSE
end if
%>

Har nu ändrat till kakor istället för sessioner. session heter test & niva heter så än. Men hur skriver jag in niva i det nya? Det funkar bra med bara "test" men med nivåinloggningen blir det värre. Detta testade jag men.....

. 
<%
If NOT request.cookies("niva")) >=3 Then
if request.cookies("test") = "" then
response.redirect("login.asp")
end if
%>

Jag får felkod:

Feltyp:
Kompileringsfel i Microsoft VBScript (0x800A03F9)
'Then' förväntas.
/1/index.asp, line 2, column 30
If NOT request.cookies("niva")) >=3 Then

@ndersMedlem sedan juni 200032 969 inlägg
#2

Räkna start- och slutparenteser.
I övrigt kommer det där nog inte gå så bra - du måste typkonvertera innan du kan jämföra som ett tal.

BiasseMedlem sedan aug. 2003480 inlägg
#3

Paranteserna såg jag men vilken typ ska man konvertera till?

Utgår från detta:

If not RecSet.EOF Then
  Response.Cookies("niva") = RecSet("niva")

  If RecSet("niva")="1" Then
    strPage="index.asp"
  elseIf RecSet("niva")="2" Then
    strPage="index.asp"
  elseIf RecSet("niva")="3" Then
    strPage="index.asp"
  elseIf RecSet("niva")="4" Then
    strPage="index.asp"
  elseIf RecSet("niva")="5" Then
    strPage="index.asp"

  End If

  RecSet.Close : set recset = nothing
  Connect.Close : set connect = nothing
  
  Response.Cookies("test") = "fel användarnamn eller lösenord"    
  Response.Redirect "login.asp"
%>

Så här långt funkar det:

<%
if request.cookies("test") = "" then
response.redirect("login.asp")
end if
%>

Men sen när nivån ska in blir det svårare.

@ndersMedlem sedan juni 200032 969 inlägg
#4

Om det nu är heltal du ska jämföra med kan det passa bra att konvertera till någon heltalstyp - ex. integer. Använd då Cint()

iLevel = request.cookies("niva")
if isnumeric(iLevel) then
     iLevel = cint(iLevel)
else
     iLevel = 0
end if

....

If iLevel < 3 Then
     if request.cookies("test") = "" then
          response.redirect("login.asp")
     end if
end if
BiasseMedlem sedan aug. 2003480 inlägg
#5

:moose Nu funkar det kanon med nivå inloggning & iploggning. Det verkar funka helt att sidan lever tills man stänger webläsaren oxo & det var ju det som var hela grejen eftersom sessionerna bara loggade ut i tid & otid.

Om nån är intresserad lägger jag upp scriptet på sidan här.

Vill tacka @nders massor att han tog sig till med en knölig typ som mig (y)

127 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
124 ms — hämta tråd, inlägg och bilagor (db)