السلام عليكم ورحمة الله وبركاته
اخواني اقدم لكم اليوم طريقة عمل كلمة مرور لفتح برنامجك وعمل صلاحيات للمستخدمين
بحيث يكون هناك قائمة خاصة بالادمن وقائمة خاصة باليوزر
هيا بنا لنبدأ
اول حاجة نروح علي تصميم الجدوال ونصمم جدول اسمه "Users"
حقول هذا الجدول 6 حقول وهما
User name وهو من نوع text
Password وهو من نوع text ( قناع الادخال password )
Re_password وهو من نوع text ( قناع الادخال password )
Admin وهو من نوع yes or no
User وهو من نوع text
Auto_no وهو من نوع auto no
ثم نقوم بانشاء جدول اخر اسمه "Open_Program"
وهو يتكون من 3 حقول
Auto_no
Enter_user_name
Enter_password ( قناع الادخال password )
ثم نقوم بعمل استعلام بين الجدولين ويتم الربط بينهما علي اساس أسم المستخدم
بحيث عند كتابة أسم المستخدم ياتي لنا من جدول المستخدمين كلمة المرور وصلاحية هذا المستخدم
ثم نقوم بانشاء 3 نماذج
نموذج الادمن
نموذج المستخدم
نموذج فتح البرنامج
نموذج فتح البرنامج يستمد بياناته من استعلام open_programQ
ونقوم بتصميم زر امر في هذا النموذج يوضع فيه هذا الكود
If [Enter_Password] = [Password] Then If [Admin] = -1 Then DoCmd.OpenForm "AdminMenu" End If If [User] = -1 Then DoCmd.OpenForm "userMenu" End If DoCmd.close acForm, "Open_ProgramQ" Else MsgBox "كلمة المرور خطأ", vbExclamation End If
واليكم شرح هذا الكود
نحتاج هنا الي قاعدة IF
في الاول اذا كان حقل ادخال كلمة المرور يساوي حقل كلمة المرور قم بتنفيذ هذا الامر
اذا كان مستوي الصلاحية ادمن افتح نموذج الادمن
اذا كان مستوي الصلاحية يوزر افتح نموذج اليوزرات
ثم اغلاق نموذج فتح البرنامج
غير ذلك
اي اذا كانت النتيجة غير ذلك اظهر رسالة تفيد ان كلمة المرور خطأ
طبعا لا ننسي ان حقل الادمن وحقل اليوزر وحقل كلمة المرور في نموذج فتح البرنامج مخفين تم عملهم مخفين
مرفق لكم المثال
بالتوفيق للجميع
مش عارف ليه الكود ظاهر بايظ كده :D
If [Enter_Password] = [Password] Then If [Admin] = -1 Then DoCmd.OpenForm "AdminMenu" End If If [User] = -1 Then DoCmd.OpenForm "userMenu" End If DoCmd.close acForm, "Open_ProgramQ" Else MsgBox "كلمة المرور خطأ", vbExclamation End If



