|
ZİYARETÇİ İSTATİSTİĞİ
Sitemizin toplam ziyaretci sayısı ve online ziyaretcilerin sayısını web formu üzerinde görüntülemek için öncelikle access veri tabanında Veritabanında ToplamHit isminde tablo oluşturunuz. Tabloya Ziyaretcisayisi isminde sayı türünden alan ekleyiniz. ve tabloya ilk değer olarak 0 kaydını giriniz.
Global.asx dosyasının Session_Start Session_End bölümlerine aşağıdaki kodları yazınız.
<%@ Application Language="C#" %>
<script runat="server">
void Application_Start(object sender, EventArgs e)
{
// Code that runs on application startup
}
void Application_End(object sender, EventArgs e)
{
// Code that runs on application shutdown
}
void Application_Error(object sender, EventArgs e)
{
// Code that runs when an unhandled error occurs
}
void Session_Start(object sender, EventArgs e)
{
Session["Kimlik"] = "ziyaretci";
int AktifZiyaretci ;
int YeniZiyaretci;
AktifZiyaretci = Convert.ToInt32(Application["ToplamZiyaretci"]);
YeniZiyaretci = (AktifZiyaretci + 1);
Application["ToplamZiyaretci"] = YeniZiyaretci;
//******************Ziyaretçi Sayısı ************************
Application["Ziyaretciler"] = OturumClass.ZiyaretciSayisi();
}
void Session_End(object sender, EventArgs e)
{
int AktifZiyaretci;
int YeniZiyaretci;
AktifZiyaretci = Convert.ToInt32(Application["ToplamZiyaretci"]);
YeniZiyaretci = (CurrentUserCount - 1);
Application["ToplamZiyaretci"] = YeniZiyaretci;
Session["Kimlik"] = "";
}
</script>
Default.aspx veya masterpage sayfalarının load olayına eklenmesi gereken kod dizesi
sayfaya 2 tane label ekleyiniz.
1. Label online ziyaretci sayısı name özelliği:lblonlinesayi, text özelliği: boş
2. Label toplam ziyaretci sayısı name özelliği:lblToplamSayi, text özelliği: boş
ekleyiniz ve load olayına aşağıdaki kodları yazınız.
lblOnlineSayi.Text = Application["AktifZiyaretci"].ToString();
lblToplamSayi.Text = Application["ToplamZiyaretci"].ToString();
Projenize OturumClass isminde Class ekleyiniz ,
OturumClass sınıfının altı kısmına ZiyaretciSayisi ismindeki aşağıdaki kod dizesini yazınız.
(Not: Veritabanı bağlantısı için web.config dosyasında bağlantı metni tanımlanmalıdır ayrıca using System.data.Oledb ile Using System.Web.Configurasyon referansları class'a deklare edilmelidir.)
public static int ZiyaretciSayisi()
{
string istek = "Select ZiyaretciSayisi From ToplamHit
string BaglantiMetni = WebConfigurationManager.ConnectionStrings["Baglanti"].ConnectionString;
OleDbConnection conn = new OleDbConnection(BaglantiMetni);
conn.Open();
OleDbCommand isle = new OleDbCommand();
isle.CommandText = istek;
isle.Connection = conn;
object sonuc = isle.ExecuteScalar();
int sayi;
sayi = Convert.ToInt32(sonuc) + 1;
string istek1 = "UPDATE TotalUser set ZiyaretciSayisi='" + sayi+ "'";
OleDbCommand komut = new OleDbCommand(istek1, conn);
komut.ExecuteNonQuery();
conn.Close();
conn.Dispose();
isle.Dispose();
komut.Dispose();
return Convert.ToInt32(sayi);
}
> |