Såg en tråd på ASP forumet på denna sida och tänkte att jag kunde delar med mig ett script jag använder mig av när jag vill kontrollera IP nummer för att ge Access till en sida eller inte.
Själva funktionen:
Function IsAllowedIp(vIpNumbers)
Dim sCurrentIp, i
sCurrentIp = Request.Servervariables("REMOTE_ADDR")
CheckIp = False
If IsArray(vIpNumbers) Then
For i = 0 To UBound(vIpNumbers)
If sCurrentIp = vIpNumbers(i) Then
IsAllowedIp = True
Exit Function
End If
Next
ElseIf TypeName(vIpNumbers) = "String" Then
IsAllowedIp = sCurrentIp = vIpNumbers
End If
End Function
Vad funktionen gör senare är egentligen väldigt simpelt. Om det är en Array så loopar vi ut all data i arrayn och om IP nummret träffas så kommer den retunera ett Booleanskt värde.
Hur använder man denna typ av kod då?
Jag brukar personligen kontrollera om det INTE är en godkänd IP nummer. Det blir betyldigt enklare då om det är fel IP så skickar vi dom vidare till en annan sida eller bara avbryer sidan med Response.End.
'You could also use "Not" in the if (a bit more simpler if you want a redirect for the persons NOT allowed to the site:
If Not IsAllowedIp("127.0.0.1") Then
'Only 1 person is allowed here and if your IP is not 127.0.0.1 then you will be redirected to Default.asp
Response.Redirect "Default.asp"
End If
'And the code below here will render out for the user that runs the IP 127.0.0.1
Response.Write "Awsome codes and the rest of the page will render for the user with the IP number 127.0.0.1"
Men om vi vill ha mer än en IP ska ha tillgång till sidan vad gör vi då?
Bara ändra indatan av IsAllowedIp till:
If Not IsAllowedIp(Array("127.0.0.1","127.0.0.2")) ThenHoppas denna lilla kod kan hjälpa någon här på aspkoll.
Skapades: 2008-03-02 11:54:19
Skribent: voigtan
Lästs 1350 gånger
Betyg: 6 (totalt 7 röster)