Witschi262
Blogger
Hallo,
ich habe mir mal ein IP Bann script mal rausgesucht und möchte das verändern.
Da ich mir es zu blöd ist, die IP's von Hand in die DAtei zu schreiben, wollte ich das ganze mit einer effizienten online-Lösung Handhaben:
Eine IP wird in einer Datenbank eingespeichert. Die Datenbank wird abgefragt und in eine Variable gepackt.
So nun sollte man eigentlich eine Meldung bekommen, dass man gebannt worden ist. Hier erstmal das Script:
Ich habe mal die IP's ausgeben lassen. Funktioniert einwandfrei, nur mit einem hässlichen "Array" dahinter.
Da liegt wohl das Problem?
Freue mich schon auf Hilfe
ich habe mir mal ein IP Bann script mal rausgesucht und möchte das verändern.
Da ich mir es zu blöd ist, die IP's von Hand in die DAtei zu schreiben, wollte ich das ganze mit einer effizienten online-Lösung Handhaben:
Eine IP wird in einer Datenbank eingespeichert. Die Datenbank wird abgefragt und in eine Variable gepackt.
So nun sollte man eigentlich eine Meldung bekommen, dass man gebannt worden ist. Hier erstmal das Script:
PHP:
<?php
$userIP = $_SERVER['REMOTE_ADDR'];
$aUserIP = explode(".", $userIP);
$connection = mysql_pconnect("localhost","Kica","******");
mysql_select_db("Kica");
$banned = false;
$abfrage = "SELECT * FROM bann ORDER BY ip";
$ergebnis = mysql_query($abfrage);
while($row = mysql_fetch_object($ergebnis))
{
$bannIP = $row->ip.
$bannedIP = array();
$bannedIP[] = $bannIP;
foreach($bannedIP as $ip){
$aBanIP = explode(".", $ip);
for($i = 0; $i < 4; $i++){
if(($aBanIP[$i] == $aUserIP[$i]) or $aBanIP[$i] == "*"){
$countPart++;
}
}
if($countPart >= 4){
$banned = true;
}
$countPart = 0;
}
if($banned){
echo "Sorry, du hast gegen die Regeln verstoßen und bist gebannt.";
exit;
}
// content
}
?>
Da liegt wohl das Problem?
Freue mich schon auf Hilfe

Zuletzt bearbeitet: