09/10/2018, 23:14

làm thế nào đếm số người đang online trongPHP

Mình thấy 1 số website có hiển thị thông tin như Hiện có XX người đang online ? Bạn nào có đoạn code làm được việc này không thì vui lòng share cho mình với nhé ! Cảm ơn !
trunglg viết 01:26 ngày 10/10/2018
cái này hỏi mọi người đã lâu mà không thấy cao thủ nào vào giúp hết, hic, buồn quá !
Vinhie47 viết 01:22 ngày 10/10/2018
Quote Được gửi bởi trunglg
cái này hỏi mọi người đã lâu mà không thấy cao thủ nào vào giúp hết, hic, buồn quá !
Cái này cũng nhiều người trả lời đã lâu mà lại có người khác hỏi tiếp, không tìm gì cả, buồn hơn!
trunglg viết 01:15 ngày 10/10/2018
Quote Được gửi bởi Vinhie47 View Post
Cái này cũng nhiều người trả lời đã lâu mà lại có người khác hỏi tiếp, không tìm gì cả, buồn hơn!
Tìm rồi mà không thấy, trả lời ở chỗ nào bác chỉ giúp em với, thanks nhiều !
Zenki-X viết 01:24 ngày 10/10/2018
mình cũng tìm wá trời rồi mà ko có , ai biết chỉ với
mrsinguyenus viết 01:30 ngày 10/10/2018
Sưu tầm:
Code:
<?php
class UsersOnline {
    /* Các tham số kết nối được sử dụng để dùng chung */
    var $host     = 'localhost';
    var $database = 'gido';
    var $user     = 'root';
    var $password = 'password';
    var $timeoutSeconds = 120;
    var $numberOfUsers = 0;
    function UsersOnline() {
        $this->refresh();                                                                              
    }
    function getNumber() {
        return $this->numberOfUsers;
    }
    function printNumber() {
        if($this->numberOfUsers == 1) {
            echo "$this->numberOfUsers";
        } else {
            echo "$this->numberOfUsers";
        }
    }
    function refresh() {
        global $REMOTE_ADDR, $PHP_SELF;
        $currentTime = time();
        $timeout = $currentTime - $this->timeoutSeconds;
        mysql_connect($this->host, $this->user, $this->password)
            or die('Error conecting to database');
        mysql_db_query($this->database,
                       "INSERT INTO usersonline VALUES ('$currentTime','$REMOTE_ADDR','$PHP_SELF')")
            or die('Error writing to database');                      
        mysql_db_query($this->database,
                       "DELETE FROM usersonline WHERE timestamp < $timeout")
            or die('Error deleting from database');          
        $result = mysql_db_query($this->database,
                                 "SELECT DISTINCT ip FROM usersonline WHERE file='$PHP_SELF'")
            or die('Error reading from database');
        $this->numberOfUsers = mysql_num_rows($result);                                                                                   
        mysql_close();
    }
}
?>
mrsinguyenus viết 01:18 ngày 10/10/2018
a` quên cấu trúc table đó nữa hì hì

CREATE TABLE `usersonline` (
`timestamp` int(11) NOT NULL default '0',
`ip` varchar(30) NOT NULL default '',
`file` varchar(255) NOT NULL default ''
) TYPE=MyISAM;
Bài liên quan
0