<?php $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::$timern"; } else $online_array[]="$live_user::$last_time"; } endif; } if(isset($online_array)): foreach($online_array as $i=>$str) { if($str=="$user::$timern") { $ok=$i; break; } } foreach($online_array as $j=>$str) { if($ok==$j) { $online_array[$ok]="$user::$timern"; break;} } endif; $writedata=fopen($data,"w") or die("Не могу открыть файл $data"); flock($writedata,2); if($online_array=="") $online_array[]="$user::$timern"; 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); echo "На сайте : $online"; ?>