Нужна помощь по модифицированию gate для пинча

Discussion in 'PHP' started by [_Keeber-PUNK_], 7 Nov 2007.

  1. [_Keeber-PUNK_]

    Joined:
    6 Oct 2007
    Messages:
    25
    Likes Received:
    10
    Reputations:
    3
    Нужна помощь по модифицированию gate для пинча

    Модифицировать нужно гейт каторый написал GENOM
    Зачем это нужно: Сейчас растет тенденция подключения пользователей к интернету через локальную сеть (через шлюз), тоесть у всех пользователей один ip адрес.
    В этом gate есть функция проверки ip адресов отчетов, тоесть гейт проверяет если есть отчет с таким ип адресом то оно проверяет размер отчета, и остовляет тот отчет каторый большего размера, отчет же с меньшим размером оно удаляет.
    Суть модификации: Нужно зделать так чтоб оно проверяло ip адреса отчетов если они одинаковы то оно проверяло их размер и если размеры разные то gate оставляет этот отчет если же размеры одинаковы, то оно удаляло более старый отчет.

    Надеюсь я ясно выразил суть идеи, если не ясно обьясняю еще раз)
    Когда люди с одной сети а это может быть 500 - 600 человек запускают пинч то гате бонально думает что это один и тотже человек и удаляет отчеты.....


    P.S. Не могу реализовать сам по этому прошу помощь зала)


    Вот вот ссылка на gate : http://slil.ru/25072642

    Я в пхп не силен но помоему нада переписать этот участок кода:

    PHP:
    if($autoclean===1){
    for(
    $ii=0;$ii<$num;$ii++){
    list(
    $tm1,$tm2,$ip1)= split("_"$fail[$ii]);
    if(
    "$ip.bin"==$ip1 && $fail[$ii]<>$filename){
    if(
    filesize("$dirname/$filename")>=filesize("$dirname/$fail[$ii]")){unlink("$dirname/$fail[$ii]");exit;}
    else{
    unlink("$dirname/$filename");exit;}
    }}}
    }
     
  2. genom--

    genom-- Elder - Старейшина

    Joined:
    9 Jul 2006
    Messages:
    668
    Likes Received:
    416
    Reputations:
    288
    if($autoclean===1){
    for($ii=0;$ii<$num;$ii++){
    list($tm1,$tm2,$ip1)= split("_", $fail[$ii]);
    if("$ip.bin"==$ip1 && $fail[$ii]<>$filename){
    if(filesize("$dirname/$filename")==filesize("$dirname/$fail[$ii]")){unlink("$dirname/$fail[$ii]");exit;}
    }}}
    }

    вроде так -- в обем если ип одинаковый и размеры одинаковые только тогда более старый отчет удаляется
     
    1 person likes this.
  3. [_Keeber-PUNK_]

    Joined:
    6 Oct 2007
    Messages:
    25
    Likes Received:
    10
    Reputations:
    3
    gеnom--, Неа не работает.... Гейт не удаляет отчеты если у них одинаковые размиеры и ip адреса
     
    #3 [_Keeber-PUNK_], 8 Nov 2007
    Last edited: 8 Nov 2007
  4. [_Keeber-PUNK_]

    Joined:
    6 Oct 2007
    Messages:
    25
    Likes Received:
    10
    Reputations:
    3
    Кто рубит в php выручите плиз.... оч нада!
     
  5. banned

    banned Banned

    Joined:
    20 Nov 2006
    Messages:
    3,324
    Likes Received:
    1,193
    Reputations:
    252
    Мне кажется автоклин переменная равна значению...
    PHP:
    if($autoclean == 1)
    {
        for(
    $ii 0;$ii $num;$ii++)
        {
            list(
    $tm1$tm2$ip1) = split("_"$fail[$ii]);
            if(
    $ip."bin" == $ip1 && $fail[$ii] <> $filename)
            {
                if(
    filesize($dirname/$filename) == filesize($dirname/$fail[$ii]))
                {
                    
    unlink($dirname/$fail[$ii]);
                    exit;
                }
            }
        }
    }
    Почему тут лишняя скобка была....?
     
    #5 banned, 10 Nov 2007
    Last edited: 10 Nov 2007
  6. [_Keeber-PUNK_]

    Joined:
    6 Oct 2007
    Messages:
    25
    Likes Received:
    10
    Reputations:
    3
    Ну ты в нече выставляеш параметр если 1 то включено автоудаление , если 0 то выключено