Sunday, 9 June 2013

Page Hit Counter

Page Hit Counter

It is sometimes useful to display the number of visits a page on a Web site has experienced using a counter that's displayed as part of the page's content. This is a very simple hit counter / page counter to see how many people have visited a web page if you want to show it on a web page. This is a simple using the Application in ASP.NET

Application Object

The Application object is used to store and access variables from any page, just like the Session object. The difference is thatALL users share ONE Application object (with Sessions there is ONE Session object for EACH user).
The Application object holds information that will be used by many pages in the application (like database connection information). The information can be accessed from any page. The information can also be changed in one place, and the changes will automatically be reflected on all pages.
Global.aspx
The global.asax file is used to add application level logic & processing. Note that the global.asax does not handle any UI related processing, nor does it process individual page level requests. It basically controls the following events...
Application_Start
Application_End
Session_Start
Session_End

When an web page load, this event occurs only one time in an application’s life cycle. It occurs again when you restart the IIS. When IIS reset then application count also reset to zero (0). It’s the best place to count number of visitors.
void Application_Start(object sender, EventArgs e)
{
// Code that runs on application startup
Application["hit"] = 0;
}
HTML
Used label to show the no of hit in web page
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Label ID="Label1"runat="server" Text="Label"></asp:Label>
</div>
</form>
</body>
</html>
Code
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
Application["hit"] =Convert.ToInt32(Application["hit"].ToString()) + 1;
}
Label1.Text = "Count = " +Convert.ToInt32(Application["hit"].ToString());
}

No comments:

Post a Comment