PDA

مشاهده نسخه کامل : آمار کاربران سايت در ASP.NET !



Security
29-11-06, 20:02
روزانه کاربران زيادی از سايت شما بازديد می کنند و برای هر مدير سايت آمار بازديدها، صفحات بازديد شده، ساعت و تاریخ بازديد، لينک و سايتی که کاربر به واسطه آن از سايت ما بازديد نموده است و . . . از اهميت ويژه‌ای برخوردار است.
روزانه کاربران زيادی از سايت شما بازديد می کنند و برای هر مدير سايت آمار بازديدها، صفحات بازديد شده، ساعت و تاریخ بازديد، لينک و سايتی که کاربر به واسطه آن از سايت ما بازديد نموده است و . . . از اهميت ويژه‌ای برخوردار است.

برای آمارگيری از سايت‌ها از روشهای مختلفی می توان استفاده نمود:

۱- استفاده از سايتهای آمارگيری رايگان همانند: Nedstat يا Sitemitter و . . .
۲- به روش برنامه‌نویسی و بررسی از داخل برنامه

در روش اول به نوعی برای نمايش به کاربران از اعتبار بيشتری برخوردار است اما نقص آن علاوه بر تبليغ مجانی برای ديگران اين است که در بعضی از Firewallها به اسکريپتی که اطلاعات کاربر را به اين سايتها ارسال می نمايد همانند يک تروجان (اسب تراوا يا سيستم جاسوسی) نگاه می کنند و اجازه عبور به آن نمی دهند.

به همين خاطر روش دوم می تواند دقیق تر عمل نمايد. از سوی ديگر ذخيره اطلاعات کاربران در يک بانک اطلاعاتی می تواند منشأ گزارشات بسيار جالبی برای مديران سيستم شود.

در نمونه برنامه زير سعی کرده‌ام اطلاعات نسبتاً جالبی از رفتار کاربران به کمک ASP.NET را به نمايش گذارم. البته مطالب ذيل نمونه‌ای از اطلاعات کاربران سايت می باشد که می شود به سليقه و نياز خودتان آنرا تغيير دهيد (کليه متغيرهايی که نوع آنها ذکر نشده است از نوع String می باشد).

الف) نام دستگاه کاربر و IP آن :
ClientName = Request.UserHostName
ClientIP = Request.UserHostAddress

ب) لينکی که کاربر با کليک بر روی آن سايت را يافته است.
REFERER = Request.ServerVariables.Item("Only the registered members can see the link")

ج) اطلاعاتی در رابطه با سیستم کاربر (Client)
LANGUAGE= Request.ServerVariables.Item("Only the registered members can see the link")
AGENT = Request.ServerVariables.Item("Only the registered members can see the link")
Platform = Request.Browser.Platform

د) QUERY STRING صفحه حاضر
QUERY STRING = Request.ServerVariables.Item("QUERY_STRING")

ح) اطلاعاتی در رابطه با Browser کاربر
()Browser = Request.Browser.Browser
()Browser_Type = Request.Browser.Type
()Browser_Version = Request.Browser.Version

ز) زمان و تاريخ بازديد
Dim MyDateTime As New DateTime
()MyDateTime = Now
Dim MyDate As String = MyDateTime.ToString("MM/dd/yyyy")
Dim MyTime As String = MyDateTime.ToString("hh:mm:ss")

بديهی است در صورتی که بخواهيم به محض ورود کاربر به سايت اين مجموعه اطلاعات را جمع‌آوری نماييم، می بايست آن را در زيربرنامه Session_Start انجام دهيم (اين روتين در Global.asax قرار دارد).

با ارسال محتويات اين متغيرها به بانک اطلاعاتی می توان گزارشاتی از جمله تعداد بازديدها در مقاطع زمانی مختلف، صفحات پر بيننده، پر بيننده‌ترين صفحه امروز و. . . را استخراج نمود.

{در ضمن شرمنده اگر جای بعضی پرانتزها جابجا شد . به بزرگی خودتون ببخشید.}

منبع : Only the registered members can see the link

با تشکر .:: Security ::.

M A H R A D
29-11-06, 23:41
خیلی باحال بود ...

استفاده کردیم ...

Security
30-11-06, 11:42
خواهش میکنم مهراد جان قابل شما رو نداشت