PDA

View Full Version : سوال: کاربر فقط یکبار login بکنه نه اینکه با مرورگرهای مختف چندین بار login کند



farhadfery
چهارشنبه 09 شهریور 1390, 11:38 صبح
سلام. عید همه مبارک.
ببینید کاربر مثلا با ie به سایت login می کنه. همان موقع با firefox با همان نام کاربری login میکنه. می شه کاری کرد که در یک زمان فقط از یک مرورگر login کنه؟
به نظر خودم یه فیلد از نوع bit به جدول users به نام isOnline اضافه کنم. و زمانی که کاربر login کردآنرا یک کنم. و برای ورودهای بهدی چک کنم که اگر یک هست، عملیات login صورت نگیره.
فقط اگر کاربر logout نکرد و پنجره مرورگر را بست آن بیت یک می مونه و هیچ وقت هم نمی تونه دیگه login کنه!:افسرده:

farhadfery
چهارشنبه 09 شهریور 1390, 11:42 صبح
یه ایده الان به ذهنم رسید. بیام رو event بستن پنجره بگم اگر کاربر login کرده، بیت isOnline را صفر کن و logout را هم انجام بده.

A B C D
چهارشنبه 09 شهریور 1390, 12:21 عصر
سوال عاقلانهء اول اینه که برای چی میخواید چنین محدودیتی ایجاد کنید؟
چون گاهی پیش میاد که افراد میخوان محدودیتی رو ایجاد کنن که ضرورتی نداره یا در اصل دنبال محدودیت/کنترل چیز دیگری بودن که میخوان بوسیلهء یک محدودیت اشتباه اون رو ایجاد کنن.

A B C D
چهارشنبه 09 شهریور 1390, 12:22 عصر
یه ایده الان به ذهنم رسید. بیام رو event بستن پنجره بگم اگر کاربر login کرده، بیت isOnline را صفر کن و logout را هم انجام بده.
اومدیم و برق رفت یا نرم افزار crash کرد!

farhadfery
چهارشنبه 09 شهریور 1390, 12:48 عصر
سوال عاقلانهء اول اینه که برای چی میخواید چنین محدودیتی ایجاد کنید؟
چون گاهی پیش میاد که افراد میخوان محدودیتی رو ایجاد کنن که ضرورتی نداره یا در اصل دنبال محدودیت/کنترل چیز دیگری بودن که میخوان بوسیلهء یک محدودیت اشتباه اون رو ایجاد کنن.
هویجودی! :بامزه:
می خوام ببینم می شه چنین کاری کرد؟

A B C D
چهارشنبه 09 شهریور 1390, 14:43 عصر
هویجودی مگه بیکاری؟ :لبخند:
ضمنا مردم هم بیکار نیستنا!

MMSHFE
پنج شنبه 10 شهریور 1390, 11:28 صبح
دوست گرامی روی Event هم زیاد حساب نکنید. اگه مرورگر رو End Process کرد چی؟ اگه کلاً JS غیرفعال بود چی؟ یک راه منطقی اینه که یک Timestamp واسه آخرین فعالیت کاربر توی DB بگذارین و اگه از آخرین فعالیتش یک زمان مشخص (مثلاً 20 دقیقه) گذشته باشه و فعالیت جدیدی انجام نداده باشه، Log out بشه و دوباره به صفحه Log in هدایتش کنید. موفق باشید.

amin1softco
پنج شنبه 10 شهریور 1390, 13:08 عصر
خوب همیشه اول با


$_SERVER ['HTTP_USER_AGENT']

مرورگر رو چک کن و بریز تو پایگاه وقت خواست لوگین کنه اگه با مرورگر قبلی نخوند بهش گیر بده؟!

farhadfery
پنج شنبه 10 شهریور 1390, 13:31 عصر
خوب همیشه اول با


$_SERVER ['HTTP_USER_AGENT']

مرورگر رو چک کن و بریز تو پایگاه وقت خواست لوگین کنه اگه با مرورگر قبلی نخوند بهش گیر بده؟!

البته اینطور که شنیدم با فایرفاکس می شه طوری عمل کرد که خودش را مثلا IE نشان بدهد.

amin1softco
پنج شنبه 10 شهریور 1390, 13:52 عصر
به حق چیزای ندیده ؟
FF یک افزونه داره که ie رو تو خودش لود می کنه پس خودش هیچکارست و تمام قوانینه ie رو دنبال می کنه البته اگه منظورتون اون باشه...