PDA

View Full Version : سوال: شمارش بازدید کنندگان سایت



mohammad_kazem
دوشنبه 24 مرداد 1390, 09:38 صبح
سلام دوستان
میخوام آمار بازدیدکنندگان از سایت رو در صفحه اول سایتم داشته باشم. میخواستم ببینم اصولی ترین کار برای پیاده سازی این قابلیت چیه؟
آیا درسته که توی هر لود صفحه یه شمارشگر رو اضافه کنیم و به کاربر نشون بدیم یا نه؟
البته با سرچی که توی سایت داشتم متوجه شدم که اکثر افراد از سایتهایی مثل وبگذر این کد رو دریافت میکنن. ولی کنجکاو شدم بدونم راه دیگری هم وجود داره؟ آیا کسی هست که از کد دیگه ای استفاده کرده باشه؟
لطفا راهنماییم کنید
با تشکر

Saman Hashemi
دوشنبه 24 مرداد 1390, 10:56 صبح
راه حلي كه گفتي خوب نيست با استفاده از Global.asax (http://barnamenevis.org/showthread.php?253641-%D9%86%D8%AD%D9%88%D9%87-%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF-%DB%8C%DA%A9-%DA%A9%D9%86%D8%AA%D9%88%D8%B1-%DB%8C%D8%A7-%D8%B4%D9%85%D8%A7%D8%B1%D9%87-%D8%B3%D8%A7%D8%AF%D9%87) ميتوني اين كار انجام بدي...!

mohammad_kazem
دوشنبه 24 مرداد 1390, 12:42 عصر
راه حلي كه گفتي خوب نيست با استفاده از Global.asax (http://barnamenevis.org/showthread.php?253641-%D9%86%D8%AD%D9%88%D9%87-%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF-%DB%8C%DA%A9-%DA%A9%D9%86%D8%AA%D9%88%D8%B1-%DB%8C%D8%A7-%D8%B4%D9%85%D8%A7%D8%B1%D9%87-%D8%B3%D8%A7%D8%AF%D9%87) ميتوني اين كار انجام بدي...!
مرسی لطف کردی
میشه یه توضیح هم بدی بگی چیکار میکنه؟
راستی کد سی شارپش موجود نیست؟

mojtaba00
دوشنبه 24 مرداد 1390, 16:46 عصر
در قسمت solution explorer روی نام پروژه کلیک راست می کنید و سپس Add new Item رو می زنید و سپس از لیست installed templates گزینه Global Application Class رو انتخاب می کنید با نام پیش فرض.
بعد فایل رو باز می کنید : کد زیر رو می بینید:

<%@ Application Language="C#" %>

<script runat="server">

void Application_Start(object sender, EventArgs e)
{
//این کد زمانی اجرا می شود که وب سایت برای اولین بار اجرا می شود
//با هر بار تغییر فایل web.config وب سایت به حالت اولیه برگشته و در اولین بارگذاری وب سایت این کد اجرا می شود
//شما در این تابع باید یک شمارنده در دیتابیس و یا هرجای دیگر ایجاد و مقدار آن را برابر یک قرار دهید

}

void Session_Start(object sender, EventArgs e)
{
// وقتی یک کاربر جدید سایت را باز می کند این کد اجرا می شود
// در این تابع شما باید یکی به تعداد بازدیدکنندگان فعلی سایت اضافه کنید

}

void Session_End(object sender, EventArgs e)
{
// این تابع زمانی اجرا می شود که یک کاربر دیگر از سایت استفاده نکند
// در این قسمت باید ، یکی از تعداد بازدید کنندگان حاضر کم کنید


}

</script>

mehdi.2002
یک شنبه 18 دی 1390, 12:06 عصر
خب تابع ها رو هم بگین دیگه

mehdi.2002
یک شنبه 18 دی 1390, 12:09 عصر
میشه هر چیزی لازمه توی این global.aspx بزارین .راستی دیگه چه کنترلی برای نمایش می خواد؟ پایگاه داده هم میخواد؟

aynehband
سه شنبه 20 دی 1390, 08:19 صبح
در Application_Start


Application["usercpount"]=0;
//--- or load from db


در Session_Start

Application["usercpount"]=Convert.ToInt32(Application["usercpount"](++;
//--- save in db

mohsen.nsb44
سه شنبه 20 دی 1390, 11:37 صبح
خب دوست عزیز وقتی کد ها رو داخل گلوبال نوشتی چطور باید اونو تو بانک ذخیره بکنی؟
منظور امار بازدید کنندگان هست
در قسمت sessiont start کد زیر رو نوشتم
if(application["count"]==null)
application["count"]=0;
حال در پیج لود این کد رو نوشتم
application.lock();
int count=(int)application["count"];
count+=1;
application["count"]=count;
application.unlock();
label.text=count.tostring();
سوال من اینجاست که محتوای لیبیل را چطور باید در بانک ذخیره کنم و اونو بخونم
چون اگه برنامه توسط هیچ کاربری اجرا نشه بعد از مدتی شخصی سایت رو باز کنه
مقدار کانت ما مجددا از عدد 1 شروع میشه
بهمین خاطر میخوام بدونم این بازدید ها رو چطور ذخیره کنم که
اگه کاربری برنامه رو باز کرد تعداد بازدید از ادامه اون اضافه بشه
یا اینکه چطور در همون session start در بانک ذخیره کنم و چطور در application start لود کنم؟
لطفا کمی توضیح بدین و در صورت امکان یک مثال ساده در این ضمینه بزارید

mohsen.nsb44
چهارشنبه 21 دی 1390, 12:31 عصر
لطفا یکی از دوستان یک مثال بزاره در این مورد تاغ ما هم بتونیم استفاده بکنیم
من تو از وب گذر استفاده کردم اما مشتاقم تا خودم این قسمت رو طراحی کنم.
لطفا یه مثال در این مورد قرار بدید .
با تشکر .