Code đếm số người Online trong PHP

Bài này mình sẽ hướng dẫn các bạn viết ứng dụng đếm số người đang online bằng PHP&MySql đơn giản nhất. Để làm được điều này chúng ta sẽ thực hiện như sau:

Việc đầu tiên là mình sẽ tạo một CSDL tạo một cơ sở dữ liệu để lưu trữ session và thời gian. Trong bài viết này , chúng ta sẽ tạo một dữ liệu tên là “demo” và table “user_online“. Nếu bạn nào chưa biết cách làm này thì có thể tham khảo bài viết Tạo và quản lý cơ sở dữ liệu bằng phpmyadmin để tham khảo.
Tiếp theo các bạn Tạo file user_online.php. Ở đây time được tính ra bằng hàm time(). Hàm này sẽ lấy ra thời gian hiện tại của người truy cập. Tiếp tục ta lại tính thời gian mới của họ, được tính bằng việc quy ước thời gian quy định.
như vậy nếu thời gian lưu trong database mà nhỏ hơn thời gian new này thì chúng ta có thể hiểu rằng vị khách ấy đã rời khỏi website của chúng ta.
Ví dụ mình vào web lúc 7h thì hệ thống nó sẽ lấy thời điểm 7h làm mốc. Nếu sau 1 thời gian mình không làm gì, hoặc mình không truy cập website đó nữa thì hệ thống sẽ không ghi nhận thông tin mới. Như thế nếu bây giờ 8h và trừ đi 10 phút mình quy ước, rõ ràng là thời gian mới hiện tại là 7h50, Thời gian này vẫn lớn hơn thời điểm lưu thông tin 7h (7h50 > 7h). Do vậy, nếu chúng thỏa điều kiện đó thì chúng ta chỉ việc xóa đi các record trong cơ sở dữ liệu là xong.
Kết hợp với kết nổi CSDL chúng ta sẽ tiến hành insert vào bảng.
Sau đó ta tiến hành ghi nhận thông tin người dùng vào CSDL.
Ở trên các bạn thấy có biến $session. Thực sự biến $session=session_id() (Session ID được generate ngẫu nhiên độ dài đến 32 ký tự)
Tiếp đến ta tiến hành xóa record khi thời gian thực lớn hơn thời gian trong cơ sở dữ liệu.
Tiếp tục là công việc hiển thị thông tin ra bên ngoài bằng cách liệt kệ các record có trong database.
Và sau đây là toàn bộ nội dung code của trang user_online.php.
Ứng dụng trên chỉ là những bước cơ bản cho những bạn mới làm quen với PHP , các bạn nên dùng nó như là dạng tham khảo để phát triển cho ứng dụng lớn hơn sau này. Chúc các bạn thành công !
Tin tức khác:
Bài sau
Bài trước
Tham gia bình luận

0 nhận xét: