Webmaster общности: Predpriemach.com | SearchEngines.bg

    Бан система с MySQL – Авторски

    Първо ще добавя че скрипта е авторски Winking

    значи имаме просто една малка база в която записваме IP адресите.

    CREATE TABLE `ban` (
    `id_ban` int(11) NOT NULL,
    `ip` varchar(20) NOT NULL
    );

    ето го config.php

    <?php
    
    $server = "localhost";
    $dbusername = "Потребител";
    $dbpassword = "Парола";
    $db_name = "База";
    
    ?>

    предполагам, че до тук всичко ви е ясно.

    ето и най-важния файл:

    ipban.php

    <?php
    
    include "config.php";//инклудваме конфигуриращия файл
    
    $ipblock = $_SERVER[REMOTE_ADDR];//засичаме IP адреса на потребителя
    
    //тук правиме връзка с базата данни
    mysql_connect($server, $dbusername, $dbpassword)or die("Сайтът не може да се свърже към базата данни");
    @mysql_select_db($db_name) or die("Грешна база данни");
    $query="SELECT * FROM ban";
    $result=mysql_query($query);
    
    $num=mysql_numrows($result);
    
    mysql_close();
    
    $i=0;
    while ($i < $num) {
    
    $ip=mysql_result($result,$i,"ip");
    
    //сравняваме дали IP-то на потребителя не е записано в базата данни и ако е му забраняваме достъпа.
    if (ereg($ipblock,$ip))
    {
    echo "Достъпа от IP $ip е забранен";
    exit();
    }
    $i++;
    }
    ?>

    единственото което трябва да направите е да инклуднете ipban.php на всичките ви страници в самото начало.

    <?php
    include "ipban.php";
    ?>

    вече за записването на IP адресите в базата, вие трябва да си решите как ще го правите.

    Този скрипт не подлежи на каквито и да е лицензи Veryhappy