Đếm số người online trên website dùng PHP/Laravel

Hôm nay mình cùng các bạn làm một module đếm xem lịch sử truy cập vào trang web của bạn số người đang online, số người online hôm nay và tất cả số lượng truy cập vào website. Sử dụng ngôn ngữ PHP và trên Laravel framework để cùng các bạn làm module này. 

Để đếm số người online mình sẽ dùng Session trong PHP. Ở đây mình không giải thích kỹ về Cookie và Session trên web của mình có một bài nói về Session & Cookie bạn có thể tìm đọc nhé.

Tạo Table trên cơ sở dữ liệu

Tạo bảng có tên là user_onlines và gồm 4 trường như hình bên dưới ảnh.

tao-bang-csdl

Tạo model laravel

Bạn tạo thư mục Models và file có tên UserOnlineModel.php theo đường dẫn ./app/Http/Models/UserOnlineModel.php. Copy đoạn code bên dưới vào file UserOnlineModel.php vừa tạo.

 

Xử lý người dùng online

Chúng ta đã tạo các hàm xử lý người dùng online giờ chúng ta cần gọi nó khi người dùng vào website của bạn. 

  1. Vào thư mục theo đường dẫn ./app/Providers/ tạo file có tên là: UserOnlineProvider.php
  2. Vào thư mục ./config/app.php tìm tới dòng ‘providers’ => [……..] thêm App\Providers\UserOnlineProvider::class, vào mảng providers.
  3. Copy đoạn code bên dưới vào file UserOnlineProvider.php là xong

Bây giờ bạn có thể gọi biến $query_result_person ở bất cứ file *.blade.php nào, kết quả trả về sẽ là một mảng gồm 3 phần tử. 

 

Kết luận

Với cách làm này hơi củ chuối, không đếm chính xác người truy cập web của bạn thời gian thực nhưng với ứng dụng này bạn có thể áp dụng cho những website đơn giản lượng traffic ít,  không yêu cầu quá phức tạp.

Leave a Reply

Your email address will not be published. Required fields are marked *