الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

حقل نصي واحد لصلاحيات المستخدم - عودة إلى الموضوع

بدأه najy_zl في 27 أغسطس 2013 · 1 رد · 667 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم...

 

في سنة 2009 طرحت موضوعاً لكيفية حفظ صلاحيا المستخدم في حقل واحد نوعه عددي (Integer) و كانت الفكرة تعتمد على معاملة العدد كسلسلة من البتات بحيث تمثل كل بت إحدى الصلاحيات في البرنامج. طبعاً بتلك الطريقة كان عدد الصلاحيات محدوداً بـ 32 أو 64 صلاحية. و قد نبهني أحد الإخوة حينها أنه يمكن استعمال حقل من النوع "مفكرة" (Memo) في Access أو ntext في SQL Server من أجل عدد غير محدود من الصلاحيات.

 

في المرفقات مشروع يتكون من وحدة برمجية باسم MManageAuthorities.bas تحتوي على الإجراءات اللازمة للتعامل مع الصلاحيات كسلسلة نصية (يتم تخزينها في حقل الصلاحية مع باقي بيانات المستخدم في قاعدة البيانات. حقل الصلاحية يكون من النوع "مفكرة" (Memo) في Access أو ntext في SQL Server) و نافذة لتجربة تلك الإجراءات.

 

يحتوي الكود على شرح بالعربي.

 

لاستعمال تلك الإجراءات في أي مشروع قم بإضافة الوحدة MManageAuthorities.bas إلى ذلك المشروع.

 

الإجراءات هي:

الإجراء GiveAuthority: لإعطاء إحدى الصلاحيات للمستخدم.

الإجراء RemoveAuthority: لإزالة إحدى الصلاحيات من المستخدم.

الإجراء GiveAllAuthorities: إعطاء كافة الصلاحيات للمستخدم.

الإجراء RemoveAllAuthorities: لإزالة كافة الصلاحيات من المستخدم.

الدالة UserHasAuthority: لمعرفة ما إذا كان المستخدم له إحدى الصلاحيات أم لا.

 

المرفق:

 

AuthorityAsString.rar

 

نرجو الاستفادة و السلام.

وَ قُلِ اعْمَلُوا فَسَيَرَى اللهُ عَمَلَكُمْ وَ رَسُولُهُ وَ الْمُؤْمِنُونَ

صدق الله العظيم

#2

الف الف شكر مثال غاية فى الاهمية

KHALED_HELAL

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…