ورود

View Full Version : تعداد کاربران آنلاین یک برنامه



نعیم رضاییان
یک شنبه 13 شهریور 1384, 17:05 عصر
سلام

اگه یک برنامه تحت شبحه باشه و بانک اطلاعاتی اون sql server و نرم افزار هم قسمت login داشته باشه چه طوری میشه تعداد کاربران آنلان یا کاربرانی که به نرم افزار login کردن رو پیدا کرد

بهترین روش برای این کار چیه

مرسی

نعیم رضاییان
پنج شنبه 17 شهریور 1384, 22:05 عصر
اقا کمک ؟منتظرم

حامد مصافی
شنبه 19 شهریور 1384, 01:43 صبح
سلام

دو راه دارید

1 - یک روش ساده : یک بافر برای کاربران خواهید داشت (می تونه یک جدول از دیتا بیش باشه) اما بهتره از یک منبع سبک تر مثل یک فایل ini استفاد کنید
در هنگام ورود نام کاربر مورد نظر رو در فایل بنویسید و در هنگان خروج این نام رو پاک کنید
و در خلال برنامه با خوندن این فایل به لیست کاربران آن لاین دسترسی خواهید داشت

2 - روش دوم که بهتره : مطمئناً یک جدول برای کاربران دارید (نام کاربری؛ مشخصات؛ کلمه رمز و ...) کافیه یک فیلد دیگخ مثلاً با نام IsOnline و از نوع Boolean ایجاد کنید و به محض ورود این فیلد رو به true و در هنگام خروج اونو به false ست کنید
به این ترتیب همیشه می تونید بفهمید کی آن لاینه و کی آف لاین

نعیم رضاییان
یک شنبه 20 شهریور 1384, 08:55 صبح
اقا مرسی فکر کنم روش دوم بهتر باشه از راهنماییتون ممنون

mRizvandi
یک شنبه 20 شهریور 1384, 18:17 عصر
سلام

مواظب خروجهای غیر استاندارد باش. برای اون هم راه هایی وجود داره. مثل نگهداری تاریخ و زمان Login.

V60
یک شنبه 29 بهمن 1385, 05:07 صبح
سلام
مشکل من هم همین هست ، خروجهای غیر استاندارد. این که شما نوشتید یعنی چی ؟ نگهداری تاریخ و زمان login این چه طوریه؟
من در حقیقت می خواهم که با یک نام کاربری دو نفر وارد نشوند ، که با همان فیلد boolean حل می شه ولی خروج غیر استاندارد کار را خراب می کنه، این نکته ای که شما اشاره کردید راه حله ؟ می شه توضیح بدید

amirhosein
یک شنبه 29 بهمن 1385, 07:40 صبح
اگه تعداد کاربران کم باشه و تشخیص آنلاین بودن مهم یه راه اینه که توی بازه های زمانی معین برنامه سرور بیاد و چک کنه که تک تک کاربرایی که فیلد حضورشون ست شده وصل هستن یا نه یعنی جواب می دن یا نه. برای فهمیدن جواب دادن هم باید یه راهی رو خودتون ابداع کنین. البته این روش خیلی بار به سیستم تحمیل می کنه.

hadi2345
یک شنبه 29 بهمن 1385, 09:53 صبح
با سلام .

برای پیدا کردن لیست کاربران آنلاین میتونید از SP_WHO که یک SP هست استفاده کنید .

sp_who without parameters to report all current users

http://msdn2.microsoft.com/en-us/library/aa260384(SQL.80).aspx

موفق باشید .

V60
یک شنبه 29 بهمن 1385, 17:31 عصر
سلام
راستش حرف شما متین
ولی مشکل اول من اینه که برنامه ام دو لایه است، یعنی برنامه سرور جداگانه ندارم، و دوم این که دیتابیس من اکسس است . البته این اطلاعات را همان اول باید می دادم ، ببخشید . با این شرایط امکان پذیر است؟

Javad_Mail
یک شنبه 29 بهمن 1385, 17:58 عصر
هر کاربر زمانی که یک در خواست به سایت می دهد براش یه Session ساخته می شه . هر Session هم یه Timeout داره که در دست شماست و شما می تونید اون رو کنترل کنید .
یعنی هر کاربر بعد از اولین درخواست یه Session براش ساخته می شه و بعد از مدتی (SessionTimeout ) که در خواستی نکنه اون به پایان می رسه . می تونه دستور خروج کاربر رو در این قسمت بزاری .

V60
دوشنبه 30 بهمن 1385, 00:41 صبح
یا من اشتباهی این سوال را اینجا مطرح کردم یا شما اشتباهی اینجوری پاسخ دادین!!!
من دارم در مورد application تحت محیط win صحبت می کنم....