06-11-22, 03:42 PM
(05-11-22, 11:51 AM)barawy كتب : السلام عليكم
انت فى الاتجاه الصحيح ولكن اظنك عكست المطلوب اثناء كتابة الكود واليك الكود المعدل
ملحوظة : علامة <> تعنى لا تساوى
شرح الكود : هو اذا كان نوع المستخدم لا يساوي مدير .. قم بالتالى .... تعطيل الأزرار ما عدا رقم 3 و 4 ... غير ذلك ... قم بقتح جميع الأزرار
مرفق مثال
وعليكم السلام ورحمة الله وبركاته :
بالنسبة للمثال المرفق - الطريقة جيدة وفعالة -
==========================
لكن للعلم وبعيداً عن موضوع هذه المشاركة : إن استخدامك لجملة الاستعلام عن اسم المستخدم وكلمة المرور ضعيفة جداً
وبإمكان أي مستخدم عادي(يعرف ما هي حقنة الـ SQL) أن يخترق البرامج التي تنفذها بهذه الطريقة بدون فتح قاعدة البيانات أو كسرها
ولا يحتاج تحليل أكواد البرنامج، ولا يحتاج معرفة اسم المستخدم أو كلمة المرور ..
كود :
query = "select * from users where id='" & UsernameTextBox.Text & "' and pwd='" & PasswordTextBox.Text & "'"ثانياً في حال عدم صحة كلمة المرور أو اسم المستخدم : لا تجعل البرنامج يعطي رسالة تنبيه للمستخدم بخطأ الادخال .. بل اجعل الرسالة على ليبل موجودة على نفس الفورم (كي لا تجعل للمخترقين السبيل سهل على حقن بربنامجك أيضاً عن طريق برامج تعديل الملفات التنفيذية).
فالتنبيه برسالة (ضمن نافذة حوار جديدة Dialog) تعني أن الكود الذي سبق هذه الرسالة هو كود التحقق.
قال صلى الله عليه وسلم:
«كلمتان خفيفتان على اللسان
ثقيلتان في الميزان،حبيبتان إلى الرحمن:
سبحان الله وبحمده، سبحان الله العظيم».
