PDA

View Full Version : چگونه تعداد کاربران را بشماریم؟ یا چگونه از ورود دو نفر با یک کاربری جلوگیری کنیم؟



V60
پنج شنبه 26 بهمن 1385, 13:57 عصر
سلام
چگونه می شه تعداد کاربران را در یک سیستم شمرد؟
از جدول برای ثبت ورود کابر نمی تونم استفاده کنم ، به این علت که اگر کامپیوتر ریست بشود ، رکوردی که به عنون ورودی وارد شده است پاک نمی شود .
چه کنم؟

mehdi_mohamadi
پنج شنبه 26 بهمن 1385, 15:02 عصر
می تونی از طریق کامپوننت indy چک کنی

V60
پنج شنبه 26 بهمن 1385, 17:29 عصر
من در حقیقت اینجوری برنامه نوشته ام
یک برنامه با دلفی
یک دیتابیس اکسس که با ado وصلیدمش
حالا برنامه را روی سرور قرار داده ام ، و فولدر برنامه را share کرده ام و کلاینت ها برنامه را از روی خود سرور اجرا می کنند، حالا اگر می شه بگید باز هم با indy می شه اینکار را کرد؟
راستش من تا به حال از این کامپوننت استفاده نکرده ام ، چطور می تونم استفاده کنم
متشکر

MNosouhi
جمعه 27 بهمن 1385, 00:17 صبح
من در مورد سوال شما فکر کردم ، راه حل مناسبی پیدا نکردم ، علتش هم اینه که روشی که شما برنامه نویسی میکنید روش دولایه هستش ، اما انتظاراتتون از برنامه انتظاراتی است که از یک برنامه سه لایه میره ، اگر شما یه نرم افزار سرور داشتید که همه کلاینت ها به اون وصل میشدن و نرم افزار سرور هم به دیتابیس وصل میشد (multiTier) ، توسط نرم افزار سرور میشد همه چیز رو کنترل کرد ، اما بدون وجود نرم افزار سرور کاری که شما میخاید انجام بدید سخته ، پیشنهاد میکنم در صورت امکان برنامهتون رو سه لایه کنید . به هر حال با استفاده از indy میشه مشکل رو برطرف کرد ، به این صورت که :
یه برنامه کوچیک کلاینت سرور بنویسی (با ایندی) ، نرم افزار سرور رو بر روی سیستمی که دیتابیس در اون قرار داره اجرا کن ، با باز شدن برنامه اصلی ، نرم افزار کلاینت هم اجرا بشه و آدرس برنامه رو به نرم افزار سرور ارسال کنه ، به این صورت سرور آدرس همه کلاینت ها رو داره وکلاینت ها می تونن از سرور تعداد و یا مشخصات کاربر خاصی رو درخواست کنن ، وقتی هم که قرار برنامه بسته بشه ، کلاینت با یک درخواست از سرور ، آدرس خودش رو از لیست ادرس های سرور پاک میکنه ، همچنین سرور موظفه که در فواصل زمانی مشخص پیغامی رو برای کلاینتها ارسال کنه تا مطمئن بشه که همه کلاینت ها دارن کار میکنن ، اگر کلاینت خاصی جواب نداد یعنی براش مشکلی پیش اومده (مثلا ریست شده ) و سرور باید آدرس رو از لیست پام کنه .
همینطوری که میبینی کار پردردسریه ، اما شدنیه.

V60
جمعه 27 بهمن 1385, 01:04 صبح
یعنی شما می فرمایید من یک برنامه مستقل و خیلی کوچیک بنویسم که بفهمم دستگاه ریست شده یا نه؟
آیا این فایده داره ، یعنی من می خواهم برنامه اصلیم اولا چک کنه که با یک نام کاربری و رمز عبور فقط یک نفر وارد سیستم می شه و در ثانی همان مشکلی که بیان کردم اگر پیش بیاد هم دیگه مشکلی نباشه و بتوان اون را قطع کرد؟
راستی برای زمانی که گفتید برنامه سرور ارجاع بده به نظرتون چقدر خوبه ؟
از توجهتان متشکرم

MNosouhi
جمعه 27 بهمن 1385, 16:08 عصر
یعنی شما می فرمایید من یک برنامه مستقل و خیلی کوچیک بنویسم که بفهمم دستگاه ریست شده یا نه؟
اگر تصمیم ندارید برنامتون رو 3لایه کنید ، شاید غیر از این راهی نباشه ، اگر هم باشه از منطق همین روشی که گفتم پیروی میکنه .

راستی برای زمانی که گفتید برنامه سرور ارجاع بده به نظرتون چقدر خوبه ؟
به برنامتون بستگی داره اما معمولا بین 15 تا 30 ثانیه در نظر میگرن.

seaman202008
شنبه 26 اسفند 1385, 21:34 عصر
explain more,plz

MNosouhi
یک شنبه 27 اسفند 1385, 00:20 صبح
explain more,plz


قانون شماره 11
همانطور که از عنوان سایت پیداست اینجا یک سایت فارسی زبان است، بنابراین کلیه مطالبی که در سایت مطرح می شوند می بایست به زبان فارسی نوشته شوند، مگر مطالبی که از یک منبع خارجی که به زبان دیگری است نقل قول شود. ارسال مطالب به زبان ساختگی Fingilish ( متونی که در آنها عبارات فارسی با کاراکترهای انگلیسی نوشته می شوند – برای مثال عبارت "سلام" به صورت "salam" نوشته می شود ) نیز اکیداً ممنوع می باشد.
***************