الانتقال إلى المحتوى

عمل شاشة دخول


freedoas

Recommended Posts

مرحبا للجميع
أريد عمل شاشة دخول بس المشكلة ان المستخدمين هما الطالب والمدرس والموظف
فكيف أعمل إستعلام من ثلاث جداول
يعني
1- الجدول الاول جدول المستخدمين
2- الجدول الثاني جدول الطالب
3- الجدول الثالث جدول المدرس
بحيث يوجد في جدول المستخدمين حقلين هما user_id . user_pass ويوجد في جدول الطالب و جدول المدرس user_id فكيف يمكن كتايو الكود بحيث إذا كان المستخدم طالب يظهر علي الشاشة إسم الطالب وإذا كان مدرس يظهر إسم المدرس
يعني عند كتاية إسم المستخدم و كلمة المرور إذا كان طالب يظهر في الشاشة الرئيسية إسم الطالب
إذا كان إسم المستخدم مدرس يظهر إسم المدرس في الشاشة الرئيسية
يعني إستعلام من ثلاث جدلول
مع العلم ان user_id الي موجود في الطالب و المدرس هو forigen key لجدول user
الرجاء المساعدة
:D :unsure: :D :D :lol: :lol: :lol:

رابط هذا التعليق
شارك

I'd like to reply in English because it is faster in typing for me.

In order to let do what you want, you can do the following:
1. Create a view that retreives data from the three tables
CREATE VIEW USER_VW
AS SELECT USER_ID , USER_NAME
FROM STUDENTS
UNION
SELECT USER_ID , USER_NAME
FROM TEACHERS
UNION
SELECT USER_ID , USER_NAME
FROM USERS

2. Make your form based on the created view.

Another idea, create a function that accepts user_id and retreive the name. Then use that function in the button trigger or in any valid trigger.

Good luck.

رابط هذا التعليق
شارك

declare
TYP varchar2(20);
cursor check_user is select user_id,user_pass 
									FROM user_tb; VLOGINNAME          user_tb.user_id%TYPE;
 	VUPASSWORD          user_tb.user_pass%TYPE;
 	 
 BEGIN if :control.uloginname is null and :control.upassword is null then
  message('الرجاء إدخال إسم المستخدم و كلمة المرور');
  message(' ');
	GO_ITEM(control.ULOGINNAME);
 elsif :control.uloginname is null then
 message('الرجاء إدخال إسم المستخدم');
 message(' ');
 GO_ITEM('control.ULOGINNAME');
 elsif :control.upassword is null then
 message(''الرجاء إدخال كلمة المرو');
 message(' ');
 GO_ITEM('control.upassword');
 else
:global.x:=:control.uloginname;
:global.MYflag:='0';

 OPEN check_user;
 loop
	exit when check_user%notfound;
 fetch check_user into VLOGINNAME,VUPASSWORD; If vloginname = upper(:control.uloginname) and vupassword = upper(:control.upassword) then
	 :global.MYFLAG:='1';
	  select user_cat
 into TYP from user_tb
 where user_id=:control.uloginname; 
 
 if TYP='ADM' then
 	:global.MYFLAG:='2';
 elsif TYP='TEH' then
 	:global.MYFLAG:='3';
 else
 	:global.MYFLAG:='4';
 end if;
 end if;
 end loop;
 close check_user; 
	if :global.MYFLAG='0'  then
		message('الرجاء التأكد من إسم المستخدم و كلمة المرور');
		message(' ');
		clear_record;
  GO_ITEM('control.ULOGINNAME');
	elsif :global.MYFLAG='2' then
		new_form('D:\Material\forms\main.fmx');--شاشة المدير

	elsif :global.MYFLAG='3' then
		new_form('D:\Material\forms\Add_Branch.fmx');--شاشة المدرس 
		elsif :global.MYFLAG='4' then
		new_form('D:\Material\forms\Add_Student.fmx');--شاشة الطالب 
		end if;
		end if;
 --IF :GLOBAL.MYFLAG='1' THEN
 --	clear_record;
-- END IF;
 END;

رابط هذا التعليق
شارك

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

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

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

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   تمت استعادة المحتوى السابق الخاص بك.   مسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

جاري التحميل
×
×
  • أضف...

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

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