Файл: online.dat
Строк: 38
$data="online.dat"; $time=time(); $past_time=time()-600;
$readdata=fopen($data,"r") or die ("Не могу
открыть файл $data"); $data_array=file($data);
fclose($readdata); if (getenv('HTTP_X_FORWARDED_FOR')) $user = getenv
('HTTP_X_FORWARDED_FOR'); else $user = getenv('REMOTE_ADDR');
$d=count($data_array); for($i=0;$i<$d;$i++) {
list($live_user,$last_time)=explode
("::","$data_array[$i]");
if($live_user!=""&&$last_time!=""):
if($last_time<$past_time): $live_user="";
$last_time=""; endif;
if($live_user!=""&&$last_time!="") {
if($user==$live_user) { $online_array[]="$user::$time\r\n"; }
else $online_array[]="$live_user:: $last_time"; } endif; }
if(isset($online_array)): foreach($online_array as $i=>$str) {
if($str=="$user::$time\r\n") { $ok=$i; break; }
}
foreach($online_array as $j=>$str) { if($ok==$j) { $online_array
[$ok]="$user::$time\r\n"; break;} } endif;
$writedata=fopen($data,"w") or die ("Не могу
открыть файл $data"); flock($writedata,2);
if($online_array=="") $online_array
[]="$user::$time\r\n"; foreach($online_array as $str)
fputs($writedata,"$str"); flock($writedata,3);
fclose($writedata); $readdata=fopen($data,"r") or die ("Не
могу открыть файл $data"); $data_array=file($data);
fclose($readdata); $online=count($data_array); ?>