Thống kê truy cập website ASP.NET

Bạn cần thống kê theo dõi xem có bao nhiêu khách đang truy cập website và đã có bao nhiêu lượt truy cập website của bạn. Mình sẽ hướng dẫn bạn làm việc đó.

Trước tiên mình nói qua về Chu kỳ sống của trang web trong ASP.NET (ASP.NET Page Life Cycle)

Chu kỳ sống được bắt đầu khi trình duyệt yêu cầu một trang web gọi là Session.
Chu kỳ sống vẫn tiếp tục nếu:
– Session đang hoạt động.
– Người sử dụng tương tác với giao diện web cho đến khi kích hoạt một sự kiện.
– Dữ liệu của trang (View State) wed được gửi về cho Server.
– Server nhận được View State và trả lại yêu cầu từ View State.
Chu kỳ sống kết thúc khi:
– Người dùng kết thúc trình duyệt.
– Session kết thúc (timeout).

Mỗi khi người dùng duyệt web của mình sẽ có các sự kiện ứng dụng sau:
Application_Start: Người dùng đầu tiên duyệt trang web.
Application_End: Khi không còn người dùng nào duyệt trang web.
Application_Error: Khi có lỗi xảy ra trong ứng dụng
Session_Start: Khi người dùng duyệt một trang web
Session_End: Khi người dùng đóng trình duyệt hoặc Session kết thúc (time out)

Các sự kiện ứng dụng này được “khởi tạo” trong Global.asax, Bạn hãy tạo file Global.asax trong thư mục webroot của bạn và nhập nội dung file như sau:

void Application_Start(object sender, EventArgs e)
{
//Kiểm tra nếu chưa tồn tại file thì tạo file Count_Visited.txt
if (!File.Exists(Server.MapPath(“Count_Visited.txt”)))
File.WriteAllText(Server.MapPath(“Count_Visited.txt”), “0”);
Application[“DaTruyCap”] = int.Parse(File.ReadAllText(Server.MapPath(“Count_Visited.txt”)));
}
void Application_End(object sender, EventArgs e)
{

}

void Application_Error(object sender, EventArgs e)
{

}

void Session_Start(object sender, EventArgs e)
{
// Tăng số đang truy cập lên 1 nếu có khách truy cập
if (Application[“DangTruyCap”] == null)
Application[“DangTruyCap”] = 1;
else
Application[“DangTruyCap”] = (int)Application[“DangTruyCap”] + 1;
// Tăng số đã truy cập lên 1 nếu có khách truy cập
Application[“DaTruyCap”] = (int)Application[“DaTruyCap”] + 1;
File.WriteAllText(Server.MapPath(“Count_Visited.txt”), Application[“DaTruyCap”].ToString());
}

void Session_End(object sender, EventArgs e)
{
//Khi hết session hoặc người dùng thoát khỏi website thì giảm số người đang truy cập đi 1
Application[“DangTruyCap”] = (int)Application[“DangTruyCap”] – 1;
}

Để hiển thị thống kê bạn chỉ cần gán giá trị như sau
Đã truy cập := Application[“DaTruyCap”].ToString();

Đang truy cập := Application[“DangTruyCap”].ToString();

Chúc bạn thành công

Advertisements

Về tieuyeuit
Lập trình viên Asp.net Tôi chia sẻ một,bạn chia sẻ một và chúng ta có rất nhiều!

3 Responses to Thống kê truy cập website ASP.NET

  1. Loc Ngo says:

    Bài viết rất hay, cảm ơn đã chia sẽ

  2. chinhnh says:

    sao mình làm như bạn mà nó báo là không tìm thấy file đó. liệu có phải Import namespace gì không?

Trả lời

Mời bạn điền thông tin vào ô dưới đây hoặc kích vào một biểu tượng để đăng nhập:

WordPress.com Logo

Bạn đang bình luận bằng tài khoản WordPress.com Đăng xuất / Thay đổi )

Twitter picture

Bạn đang bình luận bằng tài khoản Twitter Đăng xuất / Thay đổi )

Facebook photo

Bạn đang bình luận bằng tài khoản Facebook Đăng xuất / Thay đổi )

Google+ photo

Bạn đang bình luận bằng tài khoản Google+ Đăng xuất / Thay đổi )

Connecting to %s

%d bloggers like this: