مشکل افراد آنلاین

iranfast

Member
سلام
من کدی نوشتم برای نشون دادن افراد آنلاین توی asp.net. مشکل اینجاس وقتی با چند مرورگر سایت و باز می کنی همه رو حساب می کنه
ممنون می شم کمکم کنید
 

MDP

Well-Known Member
این مشکل شما نیست.اصلا مشکل نیست.وقتی مرورگری به سایت درخواست ارسال می کنه براش یه Session جدید تعریف میشه.
به خاطر همین هم برنامه اونو شناسایی میکنه و به عنوان یه کاربر جدید ازش استفاده میکنه.

ولی اگر میخواید این مورد برطرف بشه اسم مرورگر طرف به علاوه IP رو ذخیره کنید و هر دفه چک کنید که همچین چیزی قبلا توی سیستم وارد شده یا نه و ...
 
من هم موافقم استفاده از ip میتونه راه مناسبی برای شما باشه .

البته راهای دقیق تر و مناسب تری هم هست .

موفق باشید .
 
  • Like
Reactions: MDP

mo.esmp

Member
البته استفاده از ip يه مشکل رو به همراه داره. در ايران چون ip valid کم يک isp يه ip valid رو با استفاده از p r o x y server برای چند کاربر استفاده ميکنه. در اين حال ت اگه از ip برای چک کردن استفاده کنيد تعداد کاربران کمتر نشون داده ميشه. بهتره دوستمون اون راه های دقيق رو برامون بگن و شما از اونا استفاده کنيد.
 
دوست عزیز من جند راه میدونم که اینجا بازگو میکونم ...

شما هم با تغیر و کمی مطالعه میتونید کامل تر و منطقی تر کنید . ( احتیاج به تیکه انداختن نیست دوست عزیز mo.esmp)

PHP:
       void Application_OnStart(Object Sender, EventArgs E)
        {
            Application["ActiveUsers"] = 0;
        }
        void Session_OnStart(object Sender, EventArgs E)
        {
            Session.Timeout = 20;
            Session["Start"] = "Now";
            Application.Lock();
            Application["ActiveUsers"] = System.Convert.ToInt32(Application["ActiveUsers"]) + 1;
            Application.UnLock();
        }
        void Session_OnEnd(object Sender, EventArgs E)
        {
            Application.Lock();
            Application["ActiveUsers"] = System.Convert.ToInt32(Application["ActiveUsers"]) - 1;
            Application.UnLock();
        }

برای نمایش

PHP:
lblActiveUsers.Text = Application["ActiveUsers"].toString();

راه بعدی که برای شمارش افراد online به نظر میرسه

شمارش افراد لاگین کرده هست که میشه با LoginStatus آن رو شمارش کرد .

یک راه دیگه که به نظر من از همه منطقی تر میاد Search در google هست که اگه online user count in asp.net رو جستجو کنید .

به نتایج زیر میرسه که بسیار دوست داشتنی هست .

من چند تا لینک میزارم . مطالعه کنید بد نیست .

http://aspnetresources.com/blog/count_your_visitors.aspx

http://www.codeproject.com/KB/aspnet/Online-Active-Users.aspx

http://softprojects.org/en/KB/Articles/AspNET/AspNET-Online-Active-Users-Stats.aspx

موفق باشید .
 
  • Like
Reactions: MDP

MDP

Well-Known Member
بزرگترین سیستم های دنیا هم از آی پی استفاده می کنن.

من خودم دقیقا از روش آرش استفاده میکنم.البته با کمی تغییر.

من از ashx ها استفاده می کنم و کاربر ها رو مدیریت میکنم...
 

جدیدترین ارسال ها

بالا