Đếm số người đang online

Đếm số người đang online

Bài này sẽ hướng dẫn các bạn cách đếm số người online trên website của bạn từ những IP khác nhau. ( Chỉ những IP khác nhau thì số người online mới tăng lên).

CODE như sau :

#function Online counter
function counter()
{
$rip = $_SERVER[‘REMOTE_ADDR’];
$sd = time();
$count = 1;
$maxu = 1;

$file1 = “ip.txt”;
$lines = file($file1);
$line2 = “”;

foreach ($lines as $line_num => $line)
{
if($line_num == 0)
{
$maxu = $line;
}
else
{
//echo $line.”<br>”;
$fp = strpos($line,’****’);
$nam = substr($line,0,$fp);
$sp = strpos($line,’++++’);
$val = substr($line,$fp+4,$sp-($fp+4));
$diff = $sd-$val;

if($diff < 300 && $nam != $rip)
{
$count = $count+1;
$line2 = $line2.$line;
//echo $line2;
}
}
}

$my = $rip.”****”.$sd.”++++\n”;
if($count > $maxu)
$maxu = $count;

$open1 = fopen($file1, “w”);
fwrite($open1,”$maxu\n”);
fwrite($open1,”$line2″);
fwrite($open1,”$my”);
fclose($open1);
//tang count va maxu len cho nhieu
$count=$count+5;
$maxu=$maxu+107;

return $count; ( 1 )
}

Giải thích:

Hàm trả về số người đang online nếu bạn để return $count Nếu không để return $count thì khi gọi hàm sẽ lấy được hai giá trị: $maxu ( Số người truy cập nhiều nhất cùng lúc) và $count ( Số người đang online).

Ở trên mình cho $count=$count +5 và $maxu=$maxu+107 tức là lúc nào cũng có tối thiểu 5 người đang online và lúc nhiều nhất là 107 người. Cái này bạn có thể thay đổi tùy ý.

Nội dung cùng danh mục