عضو شده در: 18 مرداد 1386
پست: 1065
محل سکونت: Tehran
امتیاز: 227 [وضعيت كاربر:آفلاین]
تاریخ:
چهارشنبه 26 دی 1386 - 01:32
ایجاد فرم Login در Access برای پروژه استاد باقرزاده :
مثل اینکه مشکل همه در این پروژه قسمت Login هست !
طبق توضیحاتی که دوستان به من دادن
قرار هست وقتی پروژه باز میشه ، از کاربر درخواست Username و Password بشه . سپس در صورتی که مشخصات صحیح بود وارد صفحه اصلی برنامه بشه و در قسمت پایینی برنامه هم نام کاربری که لاگین کرده نمایش داده بشه ... ( یا هر جای دیگه - یعنی در برنامه بشه مشخص کرد کدام کاربر وارد شده ) ...
من یه جوری توضیح می دم که شما بتوانید با استفاده از روش خودتون این کارو انجام بدید و دوباره مشکلات دفعه قبلی پیش نیاد !
اول اینکه بگم دیگه فایل Access تنها کاربردی داره و معمولا برای اون باید با یه زبان برنامه نویسی مثل VB یا .NET برنامه نوشت ( منظورم VBA داخل خود Access نیست .. )
اما از اونجایی که استاد باقرزاده هم دارند خود Access به تنهایی یاد میدن و هدف یادگیری خود Access هست ایشون خواستند که از VBA استفاده نشه ! مگر در حر چند خط کد و ... که خودتون در جریان هستید ! )
اما در کل دیگه Access تنها کارایی نداره و به این دلیل که کارایی بالایی نداره فقط از Table و Query های اون استفاده میشه و قسمت فرم اون ....
با این توضیحات پس ما باید تا جایی که میشه با استفاده از کدهای خود Access برنامه و تکمیل کنیم و برای اتصال به Table ها از VBA استفاده نکنیم
شروع کار :
ابتدا سعی کنید برای اینکار یک آنالیز انجام بدید ! آنالیز شما ممکن هست کاملا با آنالیز من متفاوت باشه و شاید شما بتوانید آنالیزی انجام بدید که همین کارو خیلی ساده تر انجام بده ! ممکن هم هست آنالیز ضعیف باشه و کار پیچیده تر بشه !
من ابتدا آنالیز و با زبان فارسی توضیح میدم
و در انتها هم فایل نمونه و برای دانلود براتون میزارم ...
آنالیز :
همانطور که گفتم راه های مختلفی برای اینکار میشه استفاده کرد !
من یک آنالیز ساده انتخاب کردم که تنها نیاز به 1 جدول داره . و این جدول هم کاملا مستقل هست و نیازی نیست که جدول های قبلی پروژه خودتون و دستکاری کنید
ما یک جدول داریم به نام Login یا فیلد های ID,User,Pass,Status
فیلد ID که کلید هست و Autonumber ...
فیلد User ( نوع Text ) برای ذخیره کردن Username کاربران
فیلد Pass ( نوع Text ) برای ذخیره کردن Password کاربران
فیلد Status هم که دو مقدار 0 و 1 و میگیره و برای مشخص کردن وضعیت هست
اما آنالیز کلی :
ما یوزر ها و پسورد ها را با Status برابر 0 داریم
برنامه که باز میشه صفحه لاگین بالا میاد و از کاربر درخواست Username و Password می کنه
اگر اشتباه بود به کاربر پیغام میده که اشتباه هست
و اگر صحیح بود ابتدا Status کاربر و برابر 1 قرار میده و سپس فرم اصلی برنامه و باز می کنه
در فرم اصلی هم چک می کنیم که Status هر کاربری برابر 1 بود . یوزر کاربر و نمایش بده ...
ما باید یک Query هم داشته باشیم که فیلد های User و Status و داشته باشه و برای Status شرط 1 و داشته باشه
یعنی فقط یوزری و نمایش بده که Status اون برابر 1 هست . تا بتوانیم از این Query برای نمایش کاربر آنلاین استفاده کنیم
آنالیز کلی به همین شکل بود
در ادامه شما باید آنالیز خودتون و پیاده سازی کنید
من با همین روش که توضیح دادم پیاده سازی کردم
یک Table و یک Query به همراه 2 فرم داره ...
در فایل زیر همه اتصالات و ورودی و خروجی ها با استفاده از کد های خود Access و Wizard هست ... و از VBA استفاده نشده
فقط یک IF و یک While در فرم frmLogin هست که کد های داخل اونها هم Wizard هست و خود IF و While هم مربوط به خود Access میشه ...
ممکنه شما بتوانید با استفاده از همین آنالیز و یا آنالیز بهتر با کد های کمتر این کارو انجام بدید که اگر دوست داشتید می توانید در اختیار دیگران قرار بدید
در این نمونه 3 یوزر قرار داده شده
یوزر stunt با پسورد 123456
یوزر ammar با پسورد 123
یوزر behzad با پسورد 321
در ابتدا فرم Login بالا میاد ، در صورتی که پسورد یا یوزر اشتباه باشه پیغام Wrong Password ظاهر میشه و در صورتی که پسورد صحیح باشه فرم Login بسته میشه و فرم اصلی برنامه یعنی Main باز میشه و در اون به کاربری که وارد شده پیغام خوشآمد گویی داده میشه ...
اگر سوالی در مورد هر قسمت از نمونه داشتید در همین تاپیک عنوان کنید
دوستانی هم که روش بهتری دارند می توانند در همین تاپیک در اختیار دیگران قرار بدهند
مهم آنالیز هست ... این یک نمونه ساده بود . امیدوارم کمکتون کنه ...
خوش باشید و موفق ...
احمد سمیعی
مشاهده موضوع بعدی مشاهده موضوع قبلی
شما نمی توانید در این بخش موضوع جدید پست کنید شما نمی توانید در این بخش به موضوعها پاسخ دهید شما نمی توانید موضوع های خودتان را در این بخش ویرایش کنید شما نمی توانید موضوع های خودتان را در این بخش حذف کنید شما نمی توانید در این بخش رای دهید شما نمیتوانید به نوشته های خود فایلی پیوست نمایید شما نمیتوانید فایلهای پیوست این انجمن را دریافت نمایید
:: DpiGuide.Com Forums ::
تمام زمانها بر حسب GMT + 3.5 Hours میباشند