ورود

View Full Version : کدی برای نمایش کاربران آنلاین



looke_Khosh_Shans
سه شنبه 28 آبان 1387, 09:22 صبح
ببخشید. اول دفاعیه در مورد اینکه هیچ مطلبی به دردبخور نتونستم پیدا کنم:

1- لینک1 (http://barnamenevis.org/forum/showthread.php?t=109395&highlight=%D9%86%D9%85%D8%A7%DB%8C%D8%B4+%DA%A9%D8 %A7%D8%B1%D8%A8%D8%B1%D8%A7%D9%86+%D8%A2%D9%86%D9% 84%D8%A7%DB%8C%D9%86&page=2)
2- لینک 2 (http://barnamenevis.org/forum/showthread.php?t=64950&highlight=%D9%86%D9%85%D8%A7%DB%8C%D8%B4+%DA%A9%D8 %A7%D8%B1%D8%A8%D8%B1%D8%A7%D9%86+%D8%A2%D9%86%D9% 84%D8%A7%DB%8C%D9%86)
3- لینک 3 (http://barnamenevis.org/forum/showthread.php?t=61504&highlight=%D9%86%D9%85%D8%A7%DB%8C%D8%B4+%DA%A9%D8 %A7%D8%B1%D8%A8%D8%B1%D8%A7%D9%86+%D8%A2%D9%86%D9% 84%D8%A7%DB%8C%D9%86)

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

ali_sorouri2005
سه شنبه 28 آبان 1387, 09:45 صبح
واسه اين كار مي توني از application استفاده كني ديگه.
بهترين راه هستش.
هر كس وارد ميشه يكي به application اضافه كنه در pageload
و در موقع خروج هم يكي ازش كم كنه.
البته من قبلا سرچ كردم در اين مورد مطلب زاد بود تو سايت !

looke_Khosh_Shans
سه شنبه 28 آبان 1387, 10:32 صبح
واسه اين كار مي توني از application استفاده كني ديگه.
بهترين راه هستش.
هر كس وارد ميشه يكي به application اضافه كنه در pageload
و در موقع خروج هم يكي ازش كم كنه.
البته من قبلا سرچ كردم در اين مورد مطلب زاد بود تو سايت !

سلام
متشکرم
این application یعنی چی. خدا وکیل یه نگاه به سوال بندازین. application چی کار میکنه ؟ چجوری باید تو سایت ببزارمش؟ application کدش چیه؟

با تشکر

Saber_Fatholahi
سه شنبه 28 آبان 1387, 11:14 صبح
سلام
متشکرم
این application یعنی چی. خدا وکیل یه نگاه به سوال بندازین. application چی کار میکنه ؟ چجوری باید تو سایت ببزارمش؟ application کدش چیه؟

با تشکر
دوست من ببین ذعوا نکن عزیزم
توی هر سایتی شما می تونی یه فایل Global.asax داشته باشی که ایونت های برای کل سایت شما داره
توی این فایل چند تا متد هست اسم یکی از اونا ApplicationStart که می تونی توی اون بنویسی


Application["Counter"] = 0;

و توی همین فایل یه متد رویداد دیگه به نام Session_Start هست که توی اون باید بنویسی


Application["Counter"] = Int32.Parse(Application["Counter"].ToString()) + 1;

این کد میاد هر وقتی که کاربر به سایت ما وارد می شه یکی به تعداد کاربران آنلاین اضافه می کنه
خوب باید هر وقت که کاربر از سایت خارج می شه تعداد کاربران انلاین کم بشه برای این کار نیز در همان فایل متد رویداد دیگه ای بنام Session_End وجود داره که کد زیر توی اون بنویس


Application["Counter"] = Int32.Parse(Application["Counter"].ToString()) - 1;

و توی برنامه ات هر جا می خوای تعداد کاربران آنلاین نشان بدی کافیه بنویسی


Application["Counter"].ToString()

البته این روش هم محدودیت های خودش داره که توی این فروم خیلی بحث شده
روشی که دوستمون مطرح کردن تقریبا می شه گفت غیر منطقیه چون باید به ازای هر صفحه ای این کد بنویسیم
امیدوارم به کارت بیاد

hassanf
سه شنبه 28 آبان 1387, 11:33 صبح
ولی از این روش استفاده نکنی بهتره چون دقت عملش خیلی پایینه.تازه اگه درست هم کار کنه (که نمیکنه ) کاربران Online رو تو بازه زمانی که Session هست نشون میده.

برای محاسبه کاربران Online خیلی از پارامتر های دیگه رو باید چک کنی تا نتیجه به واقعیت نزدیک تر بشه.جستجو بکنی الگوریتم های زیادی پیدا می کنی.
در مورد Application هم برو اینجا :http://barnamenevis.org/forum/showthread.php?t=130906&page=2

looke_Khosh_Shans
سه شنبه 28 آبان 1387, 11:33 صبح
دوست من ببین ذعوا نکن عزیزم
توی هر سایتی شما می تونی یه فایل Global.asax داشته باشی که ایونت های برای کل سایت شما داره
توی این فایل چند تا متد هست اسم یکی از اونا ApplicationStart که می تونی توی اون بنویسی


Application["Counter"] = 0;


و توی همین فایل یه متد رویداد دیگه به نام Session_Start هست که توی اون باید بنویسی





Application["Counter"] = Int32.Parse(Application["Counter"].ToString()) + 1;





این کد میاد هر وقتی که کاربر به سایت ما وارد می شه یکی به تعداد کاربران آنلاین اضافه می کنه



خوب باید هر وقت که کاربر از سایت خارج می شه تعداد کاربران انلاین کم بشه برای این کار نیز در همان فایل متد رویداد دیگه ای بنام Session_End وجود داره که کد زیر توی اون بنویس




Application["Counter"] = Int32.Parse(Application["Counter"].ToString()) - 1;





و توی برنامه ات هر جا می خوای تعداد کاربران آنلاین نشان بدی کافیه بنویسی





Application["Counter"].ToString()





البته این روش هم محدودیت های خودش داره که توی این فروم خیلی بحث شده



روشی که دوستمون مطرح کردن تقریبا می شه گفت غیر منطقیه چون باید به ازای هر صفحه ای این کد بنویسیم


امیدوارم به کارت بیاد






















آقا واقعا متشکرم.
فقط یه سوال دیگه. Session_end رو خودم تو صفحات باید تعریف کنم یا اینکه خود سیستم بعد از اینکه کاربر صفحه رو بست session رو در مدت تعریف شده در webconfig اکسپایر می کنه؟
قبلا تشکر می شه.

hassanf
سه شنبه 28 آبان 1387, 11:37 صبح
نه !
تو قسمت Add new Item یه فایل Global به پروژه Add کن . اونجا هست .