Просмотр файла mchat/antiflood.php

Размер файла: 1.58Kb
<?php 
//////////////////////////////////////////////////////////////////////////////////////////
/////
/////                        ********* MINI-CHAT *********
/////
/////                            Made by   :  VANTUZ
/////                              E-mail  :  [email protected]
/////                                Site  :  http://pizdec.ru
/////                            WAP-Site  :  http://wapstop.ru 
/////                            WAP-Site  :  http://visavi.net 
/////                            WAP-Site  :  http://banzaj.net
/////                                 ICQ  :  36-44-66
/////
//////////////////////////////////////////////////////////////////////////////////////////////
//      ВЫ НЕ ИМЕЕТЕ ПРАВО ВНОСИТ ИЗМЕНЕНИЯ В КОД СКРИПТА ДЛЯ ДАЛЬНЕЙШЕГО РАСПРОСТРАНЕНИЯ   //
//////////////////////////////////////////////////////////////////////////////////////////////
function CheckIP () 
{global $floodstime;
	
$flag= false;	
$fs= filesize('antiflood.dat');
$f= fopen('antiflood.dat', 'r');
flock($f, LOCK_SH);
$arr= @unserialize(fread($f, $fs));
flock($f, LOCK_UN);
fclose($f);
$IP= $_SERVER['REMOTE_ADDR'];
$IP=htmlspecialchars(stripslashes($IP));
$t= time();			
if (isset($arr)) { 
foreach ($arr as $k=>$v)
if ($v<$t) unset($arr[$k]);
} else $arr= array ();
if (!isset($arr[$IP])) {	
$arr[$IP]= $t + $floodstime;	
$flag= false;
} else {
$arr[$IP]= $t + $floodstime;	
$flag= true;
}
$f= fopen('antiflood.dat', 'a+');	
flock($f, LOCK_EX);
ftruncate($f, 0);
@fwrite($f, serialize($arr));
fflush($f);
flock($f, LOCK_UN);
fclose($f);
return $flag;
}
?>