Scripts

IP ban systeem met MYSQL

Hiermee kun je IP adressen verbannen van je website. Met admin en MYSQL. Voeg dit toe om pagina's te beveiligen tegen ongewenste gasten: === De SQL Code om je tabel mee aan te maken: === Waarschijnlijk kan alles beter, dus tips enzo mogen erbij worden gezet. Onthoud wel dat dit mijn eerste script is dat ik zelf heb gemaakt, soms met wat hulp van John (t3H_J @ phphulp). Veel succes ermee ;-)

ip-ban-systeem-met-mysql
==== config.php ====

[code]
<? 
// // // // // // // // // // // // // // // // // //
// (c) Stefan Verkerk == www.stefans-log.tk        //
// Met hulp van John Keates == www.johnkeates.com  // 
// // // // // // // // // // // // // // // // // //
// Vul hieronder in waar de verbannen persoon naar toe moet

$bannedtext = 'Je bent verbannen van deze site. Je hebt geen toegang meer tot deze site.'; 

// Vul hieronder je database gegevens in
$host = "localhost"; // De server, meestal localhost
$user = "";  // Je gebruikersnaam
$pass = "";  // Je wachtwoord
$dbdb = "";  // Je databasenaam

?>
[/code]
==== ipban_admin.php ====
[code]
<?php 
// // // // // // // // // // // // // // // // // //
// (c) Stefan Verkerk == www.stefans-log.tk        //
// Met hulp van John Keates == www.johnkeates.com  // 
// // // // // // // // // // // // // // // // // //

include("config.php");

////////////////////////////
// Verbinden met database //
////////////////////////////

    if (!@mysql_select_db($dbdb, @mysql_connect($host, $user, $pass))) 
    { 
        echo "Database connectie mislukt!"; 
         
        echo "Probeer deze pagina te vernieuwen. Blijft dit probleem bestaan, mail dan naar de webmaster via "; 
    } 
	
mysql_connect("$host","$user","$pass");
mysql_select_db("$db");


//echo $id;
// $laasteid = $resultidno;

/////////////////////
// Tekst op pagina //
/////////////////////
echo "<b>IP Ban Admin Pagina</b>. ";
echo "Hier vind je een overzicht van de verbannen IP adressen van jouw site. ";
echo "Ook kun je IP adressen verbannen of verbannen IP adressen verwijderen. ";
echo "<br><br><a href=\"?mode=voegiptoe\">Voeg IP toe</a><br><hr>";

/////////////////////////////////////////////////////////////////////
// Overzicht van verbannen IP adressen laten zien + verwijderlinks //
/////////////////////////////////////////////////////////////////////

// Tabel openen
?>
<table border="1">
<tr><th>ID</th><th>IP</th><th>Datum</th><th>Verwijder:</th></tr>
<?php

//include("sql_connect.inc.php");
//count the files ids
$result = mysql_query("SELECT * FROM ipban");
$data = mysql_num_rows($result);

//make a loop to get all the rows
$yoho = $data;
$yo = "1";
while($yoho >= $yo) {
//the makeup
//echo "<br />";
//$yo counts up
$yo1 = $yo;
$get = $yo1--;
$fsql = "SELECT * FROM ipban ORDER BY id LIMIT " . $yo1 . ", " . $get . "";
//echo $fsql;
$result = mysql_query($fsql);
$data_array = mysql_fetch_array($result, MYSQL_ASSOC);
$id = $data_array['id'];
$ip =  $data_array['ip'];
$date =  $data_array['datum'];
echo "<tr><td>";
echo $id;
echo "</td><td>";
echo $ip;
echo "</td><td>";
echo $date;
echo "</td><td>";
echo "<a href=\"./ipban_admin.php?&mode=verwijder&id=" . $id . "\">Wis</a>";
echo "</td></tr>";
//make the loop has an end
$yo++;
};
//$mysqli->close();
// Tabel netjes afsluiten
echo "</table><br><hr>";

///////////////////////////////////////////////////////
// Gegevens verwijderen of toevoegen uit/in database //
///////////////////////////////////////////////////////
// Verwijder een IP adres
if($_GET['mode'] == "verwijder"){
$id = $_GET[id];

$verwijderquery = "DELETE FROM ipban WHERE id='" . $id . "' LIMIT 1";
$result = mysql_query($verwijderquery);
if(mysql_query($verwijderquery)){
echo "Het verbannen IP adres is verwijderd.";
echo "<br /><a href=\"?=\">Klik hier</a> om de pagina te vernieuwen.";
}else{
echo "Er is een fout opgetreden tijdens het verwijderen. De query was: " . $verwijderquery;
echo "<br />De error van mysql: " . mysql_error(); 
};
};

// Voeg een IP adres toe
if($_GET['mode'] == "voegtoe"){
//$id = $_GET['id'];
$ip = $_GET['ip'];
$datum = date("d-m-Y");

$select="SELECT * FROM ipban"; 
$query = mysql_query($select);
$result = mysql_num_rows($query);
$id = $result;

$toevoegquery = "INSERT INTO ipban (id, ip, datum) VALUES ('" . $id . "', '" . $ip . "', '" . $datum . "')";
if(mysql_query($toevoegquery)){
echo "IP adres:" . $ip . " is verbannen.";
echo "<br /><a href=\"?=\">Klik hier</a> om de pagina te vernieuwen";
}else{
echo "Er is een fout opgetreden tijdens het verbannen. De query was: " . $toevoegquery;
echo "<br />De error van mysql: " . mysql_error(); 
};
//$toevoegquery = "INSERT INTO ipban ('id, 'ip', 'datum') '', '" . $ip . "' '" . $datum . "',";
};

///////////////////////////////////////////////////////////////
// Laast toegevoegde ID + 1 doen om zo lijst goed te krijgen //
///////////////////////////////////////////////////////////////
// Formulier om IP adres toe te voegen
if($_GET['mode'] == "voegiptoe"){
echo ("<form name=\"ipban\" action=\"ipban_admin.php\" method=\"get\">");
echo ("<input type=\"hidden\" name=\"mode\" value=\"voegtoe\">");
echo ("IP adres: <input type=\"text\" name=\"ip\">");
echo ("<input type=\"submit\" value=\"Verban IP\">");
}
?>
[/code]
==== ipban.php ====
[code]
<?php 
// // // // // // // // // // // // // // // // // //
// (c) Stefan Verkerk == www.stefans-log.tk        //
// Met hulp van John Keates == www.johnkeates.com  // 
// // // // // // // // // // // // // // // // // //
     
include("config.php");

    if (!@mysql_select_db($dbdb, @mysql_connect($host, $user, $pass))) 
    { 
        echo "Database connectie mislukt!"; 
         
        echo "Probeer deze pagina te vernieuwen. Blijft dit probleem bestaan, mail dan naar de webmaster via "; 
    } 
	
mysql_connect("$host","$user","$pass");
mysql_select_db("$db");

$select="SELECT * FROM ipban";
$query = mysql_query($select);
while ($list = mysql_fetch_object($query)) {
$ips[] = "$list->ip"; 
}

if( in_array( $_SERVER[REMOTE_ADDR], $ips )){
exit($bannedtext);
};

?> 
[/code]

Reacties

0
Nog geen reacties.