الانتقال إلى المحتوى
View in the app

A better way to browse. Learn more.

مجموعة مستخدمي أوراكل العربية

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

شرح نظام الصلاحيات وانشاء شاشة الدخول بالتفصيل...

Featured Replies

بتاريخ:
  • كاتب الموضوع

السلام عليكم
اخي العزيز H.M.M.A ...
كلامك صحيح 100 % ... الشركات اللي تبرمج مشاريع كبرى لا تتعامل بالطريقة اللي انا طرحتها...
ولكن نود ان نمشي خطوة بخطوة في مجال الصلاحيات...
اشكرك لمرورك وكل الاحترام لرأيك...
تحياتي...

  • الردود 156
  • المشاهدات 67.1k
  • البداية
  • اخر رد

أكثر المشاركين في هذا الموضوع

Most Popular Posts

  • أشــــرف
    أشــــرف

    اخي العزيز مشكور على الكود لكن عن كتابة البروسيجر يظهر ايرور bind variable حاولت الغي bind مما يسبب exception ياريت تساعدني ومشكور مقدما

  • السلام عليكم فورم المستخدمين وفورم الدخول بالمرفقات... بالتوفيق sys_login.rar

  • الأخ بالي الحبيب العزيز مشكور على موضاعتك القيمة والممتازة ولي رآى في هذا الموضوع (موضوع الصلاحيات ) ماذا لو افترضنا ان لدينا نظام كبير لشركة كبرى ويوجد فيها العديد من الأنظمة انني اقترح ان تبد

الصور المنشورة

بتاريخ:

جزااااااااااااااااك الله خيرااااااااااااا



شرح فوق الوصف رائع

بس ليا سؤال

ف شاشة الدخول عندى كتبت الكود دوت ومفيش ارورو

بس لما بعمل رن بلاحظ ان بتكون كلمة المرور غلط ومع ذلك بيدخل عادى

بس لو اليوز مش موجود بيظهر رسالة خطا

انتظر رد حضرتك
:
global.v_access:=0;
	 :global.v_user:=:userid;
	 :global.v_pwd:=:pwd;

	  declare
		   	v_alert number(2);
		  cursor getuser is 
	 	select access_id,pwd from users
	 	where user_id=:global.v_user and pwd=:global.v_pwd;
	 
	  begin
		  open getuser;
		  loop
		  fetch getuser into :global.v_access,:global.v_pwd;
		  exit when getuser%notfound;
		  end loop;
		  close getuser;
		  
		  if :global.v_pwd=:pwd then 
		  new_form('F:\project\forms\main.fmx');
		  else
	  
	
	
		  v_alert:=show_alert('alt');
		  if  v_alert=alert_button1 then 
			  clear_form;
		  else
			  exit_form;
	   		  end if;
			  end if;
		  end;

بتاريخ:
  • كاتب الموضوع

السلام عليكم
جربي هادا الكود...وان لم يعمل معك بشكل سليم ارفقي الجدول...

	  declare
	 USER	VARCHAR2(30);
	 PASS	VARCHAR2(30);
	 v_alert number(2);

	 cursor getuser is 
	 select user_id,pwd
	 from users
	 where UPPER(user_id)=UPPER(:BLOCK_NAME.v_user) and UPPER(pwd)=UPPER(:BLOCK_NAME.v_pwd);
 
  begin
	  open getuser;
	  fetch getuser into USER,PASS;
	  IF getuser%FOUND THEN
	  new_form('F:\project\forms\main.fmx');
	  else
	  v_alert:=show_alert('alt');
	  if  v_alert=alert_button1 then 
		  clear_form;
	  else
		  exit_form;
			 end if;
		  end if;
	  close getuser;
	  end;



بالتوفيق

بتاريخ:

وعليكم السلام



شكرا بجد ع مساعدة حضرتك ..كود حضرتك اشتغل معايا ..


بس ف نقطة تانية جيت اجرب اعمل اكونت وكدا عشان بعد 3 مرات دخول الباس وورد يخرج

مش بيخرج :)

الكود 
:global.v_access:=0;
	 :global.v_account :=0;
	 
declare
	
   v_USER	VARCHAR2(30);
   pass	VARCHAR2(30);
   
	 v_alert number(2);

	 cursor getuser is 
	 select user_id,pwd,access_id
	 from users
	 where UPPER(user_id)=UPPER(:userid) and UPPER(pwd)=UPPER(:pwd);
 
  begin
	  open getuser;
	  fetch getuser into :global.v_USER,PASS,:global.v_access;
	  IF getuser%FOUND THEN
	  new_form('F:\project\forms\main.fmx');
	  else
		  
	  v_alert:=show_alert('alt');
	  if  v_alert=alert_button1 then 
		 clear_form;
		  :global.v_account:=:global.v_account+1;
		  if :global.v_account=3 then 
			  exit_form;
		  
	  end if;
	  
	  else
		  exit_form;
			 end if;
	  end if;
	  close getuser;
	  end;

بتاريخ:
  • كاتب الموضوع

السلام عليكم
اختي اعمل الــ parameter على الفورم..انظري الصورة..وجربي متل هادا الكود:

SELECT COUNT(1)
INTO   VN_COUNT 
FROM   USER_PRV
WHERE  UPPER(USR_ID) = UPPER(:USER_PRV.USR_ID) AND UPPER(USR_PASSWORD) = UPPER(:USER_PRV.USR_PASSWORD);
EXCEPTION WHEN NO_DATA_FOUND THEN
VN_COUNT := 0;
END;

IF VN_COUNT = 0 THEN
:PARAMETER.P_TRIALS := NVL(:PARAMETER.P_TRIALS,0) + 1;
IF :PARAMETER.P_TRIALS = 3 THEN
EXIT_FORM(NO_COMMIT,NO_VALIDATE);
ELSE
MESSAGE('PLEASE ENTER USER NAME OT PASSWORD');
  MESSAGE('PLEASE ENTER USER NAME OT PASSWORD');
GO_BLOCK('USER_PRV'); 
CLEAR_BLOCK(NO_COMMIT);
GO_BLOCK('USER_PRV');
END IF;

post-73694-1249417924_thumb.jpg

بتاريخ:

مشكور اخي على هذا المجهود

لكن انا حسب وجهة نظري ان خير طريقة لفرض الصلاحيات هي انشاء يوزر على الداتابيس بدلا من انشاء جدول للمستخدمين

دمتم بخير

بتاريخ:
  • كاتب الموضوع
مشكور اخي على هذا المجهود

لكن انا حسب وجهة نظري ان خير طريقة لفرض الصلاحيات هي انشاء يوزر على الداتابيس بدلا من انشاء جدول للمستخدمين

دمتم بخير


اشكرك على مرورك اخي جاد...
وسيتم شرح هذاالموضوع قريبا ان شاءالله
تحياتي

تم تعديل بواسطة PALI.ORACLE

بتاريخ:

جزاااااااااااااااااك الله خيراااااااااااااا

تم التنفييييييييييييييييييييييييييييييييييييييييييييييييييييييييييييييييذ

معلش تعبت حضرتك ........حضرتك لك كل الاحترام والتقدير

بتاريخ:
  • كاتب الموضوع
جزاااااااااااااااااك الله خيراااااااااااااا

تم التنفييييييييييييييييييييييييييييييييييييييييييييييييييييييييييييييييذ

معلش تعبت حضرتك ........حضرتك لك كل الاحترام والتقدير




بالتوفيق اختي..
بتاريخ:

اكرر شكري لك على هذا المجهود وبخصوص شرح الطريقة الآخرى فأنا اؤيدك في ذلك

يوجد الكثير بحاجة الى هذه المعلومات فأنشرها لهم جزاك الله كل خير

بتاريخ:
  • كاتب الموضوع
اكرر شكري لك على هذا المجهود وبخصوص شرح الطريقة الآخرى فأنا اؤيدك في ذلك

يوجد الكثير بحاجة الى هذه المعلومات فأنشرها لهم جزاك الله كل خير


اخي جاد...راجع هذا الرابط:

http://www.araboug.org/ib/index.php?showtopic=35177&hl=

بالتوفيق
  • بعد 1 شهر...
بتاريخ:

ماشاء الله كل يوم فى جديد موضوع يستحق التقدير ويعجز القلم عن الشكر لصاحب الاموضوع الاخ بالى وربنا يجعله فى ميزان حسناته يارب

لى ملحوظة صغيرة اخ بالى ممكن تجمع الموضوع كاملا وبالترتيب والتنسيق حتى يستفيد اخوننا فى المنتدى وجزاك الله خير الجزاء
تقبل تحياتى

بتاريخ:
  • كاتب الموضوع

السلام عليكم
ان شاءالله قريبا أخي...
ولا يهمك...

بتاريخ:

وفقك الله لكل ما يحب ويرضاه

بتاريخ:
  • كاتب الموضوع

أشكرك أخي العزيز جلال على مرورك الكريم...

  • بعد 1 شهر...
  • بعد 2 شهور...
بتاريخ:

ماشاء الله عليك يا اخ بالي

شغل وشرح ممتاز ممتاز ممتاز

  • بعد 4 شهور...
بتاريخ:

الاخ الكريم
لك كل التحايا و خالص الاشواق
اولا احب اقول كل الشكر على المعلومات القيمة جدا و الثرة
اخى انا لسع فى اول الطريق واستخدم اوراكل9i. حاولت استخدم الكود بتاعك فى انشاء جدول.لكن للاسف لم يتم الانشاء بصورة كاملة.
حيث انه تم انشاء الجدول على الداتابيز لكن عندما اعمل ليه desc الاجابة تاتى table or view does not exist.
حاولت اعمل drop للجدول برضو الاجابة تاتىtable or view does not exit. علما بانه حينما اعمل select*from tab اجد الجدول موجود
الحل الحل ياحبيبى
مع خالص شكرى وتقديرى

الطاهر ابراهيم

بتاريخ:
  • كاتب الموضوع

السلام عليكم
أود منك عمل التالي:
جرب انشيء الجدول مرة اخرى وبنفس الاسم الموجود...
هل سيعطيك خطا ام لا ؟؟

بتاريخ:

حاولت اخى الكريم عمل جدول اخر.
,و بنفس الخطوات .الكود لا يتنفذ لانو بقول or-00911:invalid character.
و شكرا

بتاريخ:

جزاكم الله عنا خير الجزاء وجعلكم من الاخيار المعينين لنا دائما

بتاريخ:

السلام عليكم
ما هو الكود الذي كتبته ؟؟

الاستاذ الجليل
لك التحية
معليش حتتعب معانا شوية لكن هكذا حال الاستاذ
الحمد لله لقد تم تكوين الجدول على احسن وجه.بس المشكلة اصبحت فى الكود.
عندما اعمل COMPILE,بعطى الرسلة الاتية
Error 201 at line12,column9
identifier'user_prv' must be declared
Error at line 10,column3
sql statement ignored
Error 201 at line33, colum10
identifier'user_prv' must be declared
error 0 at line31,column4
sql statement ignored
شكرا اخى

انضم إلى المناقشة

يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.

زائر
أضف رد على هذا الموضوع...

برجاء الإنتباه

بإستخدامك للموقع فأنت تتعهد بالموافقة على هذه البنود: سياسة الخصوصية

Account

Navigation

البحث

إعداد إشعارات المتصفح الفورية

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.