U
User0
Gast
Hallo Leute, ich verzweifel seid Stunden an einer bestimmten Sache.
Problemquelle:
Erklärung:
$ban_ip_list = einzelne IP's wie (123.123.123.123) // Funktioniert gut
$ban_ip_range = IP-Bereiche wie (123.123.*.*) // Funktioniert nicht
Problem:
Das * ist scheinbar das Problem. // siehe unten EDIT
Ich möchte es aber in einer Datei haben, einmal Gruppe und einmal einzeln.
Wenn ich:
$ban_ip_range = array('123.123.*.*'); // Das geht wieder, beziehe mich aber auf Punkt (Problem).
Frage:
Kann mir jemand helfen so aus dem Stehgreif herraus?
EDIT:
-------
Muss mich korrigieren, scheinbar liesst er in den IP Bereichen (_ipsperre_group.inc) nur die letzte Zeile,
denn wenn ich es imemr mit der letzten gesperrten ip versuche geht es setze ich die Zeile woanders hin dann gehts nicht:
Beispiel: (in der '_ipsperre_group.inc' steht folgendes)
82.165.*.*
72.14.164.*
hier wird nur die letzte IP (Zeile) gesperrt bzw. der bereich, aber nicht die oben steht, also hat es mit dem * gar nichts zu tun, wie kann man das also dann lösen? Hat niemand eine Idee?
Problemquelle:
PHP:
$ban_ip_list = file('config/_ipsperre_member.inc');
$ban_ip_range = file('config/_ipsperre_group.inc');
$user_ip = $_SERVER['REMOTE_ADDR'];
$msg = '<meta http-equiv="refresh" content="0;URL=403.php">';
if(in_array($user_ip, $ban_ip_list)) exit($msg);
if(!empty($ban_ip_range))
{
foreach($ban_ip_range as $range)
{
$range = str_replace('*','(.*)', $range);
if(preg_match('/'.$range.'/', $user_ip))
{
exit($msg);
}
}
}
Erklärung:
$ban_ip_list = einzelne IP's wie (123.123.123.123) // Funktioniert gut
$ban_ip_range = IP-Bereiche wie (123.123.*.*) // Funktioniert nicht
Problem:
Ich möchte es aber in einer Datei haben, einmal Gruppe und einmal einzeln.
Wenn ich:
$ban_ip_range = array('123.123.*.*'); // Das geht wieder, beziehe mich aber auf Punkt (Problem).
Frage:
Kann mir jemand helfen so aus dem Stehgreif herraus?
EDIT:
-------
Muss mich korrigieren, scheinbar liesst er in den IP Bereichen (_ipsperre_group.inc) nur die letzte Zeile,
denn wenn ich es imemr mit der letzten gesperrten ip versuche geht es setze ich die Zeile woanders hin dann gehts nicht:
Beispiel: (in der '_ipsperre_group.inc' steht folgendes)
82.165.*.*
72.14.164.*
hier wird nur die letzte IP (Zeile) gesperrt bzw. der bereich, aber nicht die oben steht, also hat es mit dem * gar nichts zu tun, wie kann man das also dann lösen? Hat niemand eine Idee?
Zuletzt bearbeitet von einem Moderator: