webForumDet fria alternativet

Blockera ip-adress

3 svar · 1 891 visningar · startad av dude

dudeMedlem sedan aug. 2002386 inlägg
#1

Hello!
För alla som skriver i min gästbok sparar jag ner deras ip-adress i en databas.

Hur gör jag nu om jag vill blockera någons ip-adress? Alltså typ en if-sats, så om en person med en viss ip-adress går in på sidan så får de inte skriva...

Framförallt undrar jag hur det fungerar med ip-adresser, jag har tittat på min egen och den förändras ju lite varje gång jag skriver i gästboken, en gång är den: 85.228.110.57 och nästa gång är den 85.228.110.101 osv...

Ja, men helt enklet hur gör man en bra ip-kontroll?

Tack på förhand!

PeddaMedlem sedan juni 20006 032 inlägg
#2

En del har fast ip, men dom flesta har det inte.
En del ISP'er delar ut nya ip-nummer var tredje dag, men många kan ha samma i flera veckor/måndader.
En ip-block är ganska meningslös därför, och det funkar ju inte om användaren lånar en kompis dator eller liknande.

Men här är ett exempel. Eftersom du har ip-numren i en databas så får du väl göra om exemplet och lägga alla spärrade ip-nummer i array från databasen.

<?php
$blocked = array("111.111.111", "222.222.222", "333.333.333");
if (in_array ($_SERVER['REMOTE_ADDR'], $blocked)) {
   header("location: minsidaförspärradeanvändare.php");
   exit();
} 
?>
PeddaMedlem sedan juni 20006 032 inlägg
#3

Eller, om du skapar en tabell i databasen där du sparar alla spärrade ip-nummer:

$sql = "SELECT * FROM blockedip WHERE ip='{$_SERVER['REMOTE_ADDR']}'";
$result = mysql_query($sql) or die("Kunde inte kontrollera ip-numret.");
	
if (mysql_num_rows($result) != 0){
	header("Location: minsidaförspärradeanvändare.php");
	exit;
}

Det är nog en bättre lösning, även om ip-block rent allmänt inte gör så stor nytta.

colioneMedlem sedan juni 20014 421 inlägg
#4

Jag hade valt att göra det via httpd.conf eller .htaccess
http://httpd.apache.org/docs/2.2/howto/access.html

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