PDA

Просмотр полной версии : Нужна помощь по модифицированию gate для пинча


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

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


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


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

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

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;}
}}}
}

genom--
07.11.2007, 21:07
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;}
}}}
}

вроде так -- в обем если ип одинаковый и размеры одинаковые только тогда более старый отчет удаляется

[_Keeber-PUNK_]
08.11.2007, 12:02
gеnom--, Неа не работает.... Гейт не удаляет отчеты если у них одинаковые размиеры и ip адреса

[_Keeber-PUNK_]
10.11.2007, 14:15
Кто рубит в php выручите плиз.... оч нада!

Isis
10.11.2007, 14:36
Мне кажется автоклин переменная равна значению...

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;
}
}
}
}


Почему тут лишняя скобка была....?

[_Keeber-PUNK_]
10.11.2007, 15:17
Мне кажется автоклин переменная равна значению...
Ну ты в нече выставляеш параметр если 1 то включено автоудаление , если 0 то выключено