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

[تنبيه - عنوان غير مناسب : ]ارجو المساعدة جزاكم الله خير

بدأه suad707 في 13 ديسمبر 2010 · 8 رد · 478 مشاهدة · في ASP.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

تحية طيبة اخواني

سؤالي الاتي :

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

عملت الجداول كالتالي

PatientInfo (PatienID(PK),PatientName, PatientDateOfBirth,PatientAddress,PatientPhone)

DoctorInfo (DoctorNo(PK),DoctorName, DoctorSpecialization, DoctorAddress,DoctorPhone)

clinicInfo (clinicNo(PK),DoctorNo(FK),clinName)

BookingInfo (BookingNo(PK),DoctorNo(FK),Patient(FK),BookingDate,BookingTime

هل اعمل جدول عشان Login

وكيف بيكون شكلو

جزاكم الله خير وسامحونا

#2

هناك جدول خاص بالصلاحيات ومستوياتها ..

يعني حقل برمز المستخدم UserID

وحقل كلمة المرور password

وحقل بالمستوى (LevelPrivilage) : يعني Admin أو User

اللهم أطل عمري وأحسن عملي واختم بالشهادة أجلي

#3

كما قال الأخ مبرمج القاعدة

تحتاجين لإنشاء جدول للصلاحيات

وبناءً عليه يتم إعطاء صلاحية لكل شخص

مع تحياتي

اللهم اجعلنا أهلاً لحمل رسالة العلم ونشرها

لتنعم أمة الإسلام بخير العلم ونوره

www.ijoul.com

#4

الأخ الكريم/الأخت الكريمة

السلام عليكم ورحمة الله وبركاته

مرحباً بكم في منتدى الفريق العربي للبرمجة

نود تنبيهك أن العنوان غير مناسب.

الرجاء اختيار عنوان مناسب أكثر في مواضيعك القادمة، وهذا بمثابة إشعار للأهمية.

وفي حال التكرار سيتعرض موضوعك للإغلاق والحذف!!!

قواعد المشاركة

/index.php?showtopic=29343

شاكرين لكم حُسن تعاونكم

Do as I say, not as I do

We are Anonymous. We are Legion. We don't forgive. We don't forget

#5

اوك ان شاء الله وشكرا على التنبية

اشكركم كمان على المرور و المساعدة بس استفسار بسيط انا عندي جدول patientInfo وكمان جدول اخر DoctorInfo

بعني اعمل كمان جدول اسمية PrivilageInf

واضع بداخلة

DoctorNo(FK) , PatienID(FK) , LevelPrivilage , password

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

#6
suad707 كتب:

بعني اعمل كمان جدول اسمية PrivilageInf

واضع بداخلة

DoctorNo(FK) , PatienID(FK) , LevelPrivilage , password

لا أبداً.

في البداية قومي بفتح صفحة الإعدادات

post-7008-077252600 1292340631_thumb.png

ثم من تبويب Security:

post-7008-059982500 1292340659_thumb.png

1- قومي باختيار نمط الاستثمار عبر الانترنت في حال كان استخدام التطبيق سيتم من داخل وخارج الشبكة أو نمط الاستثمار عبر الشبكة المحلية في حال كان الاستخدام سيتم من داخل الشبكة فقط.

2- قومي بتفعيل الـ roles.

قومي بإنشاء 2 roles:

post-7008-018616300 1292340898_thumb.png

- doctors

- patients

قومي بإنشاء حسابات للمستخدمين الذين تريدين السماح لهم بتسجيل الدخول سواء أطباء أو مرضى وسيكون بإمكانك اختيار الـ role المناسبة لهم أثناء ذلك.

post-7008-062803500 1292340967_thumb.png

انتهينا من إنشاء الحسابات والصلاحيات.

نعود الآن إلى المشروع ونقوم باستخدام عنصر Login لإنشاء نموذج تسجيل دخول.

post-7008-053568500 1292341052_thumb.png

ونقوم بإضافة حدث onLoggedIn="redirect" ونضيف التابع redirect() إلى ملف cs

    protected void redirect(object sender, EventArgs e)
    {
        Response.Redirect("~/default.aspx");
    }

والذي سيقوم بتحويل المستخدم إلى صفحة Default.aspx.

في صفحة Default.aspx نقوم بوضع الكود التالي في ملف cs

    protected void Page_Load(object sender, EventArgs e)
    {
        if (System.Web.HttpContext.Current.User.Identity.IsAuthenticated)
        {
            string[] roles = Roles.GetRolesForUser(Membership.GetUser().UserName.ToString());
            if (roles.Contains("doctors"))
            {
                doctorsControlPanel.Visible = true;
            }
            if (roles.Contains("patients"))
            {
                patientsControlPanel.Visible = true;
            }
        }
        else
        {
            Response.Redirect("~/Login.aspx");
        }
    }

في هذه الشفرة نقوم بالتحقق من أن المستخدم قد قام بتسجيل الدخول، عندها يتم جلب قائمة بالـ roles التي يتبع لها المستخدم ولنقل أنه طبيب فسيتم عندها إظهار عنصر Panel الذي نقوم فيه بإدراج جميع عناصر لوحة تحكم الأطباء، والتي نجعلها مخفية بالوضع الافتراضي ونظهرها فقط في حال مطابقة الـ role.. ذات الأمر نطبقه على لوحة المرضى.

أما في حال لم يكن المستخدم قد قام بتسجيل الدخول ويحاول الوصول إلى صفحة Default.aspx بطلبها مباشرة في العنوان فسيتم تحويله إلى صفحة Login.aspx رغماً عنه.

هذا الشرح بشكل سريع لأني مضطر للخروج.

بالتوفيق

المرفقات
1.PNG2.PNG3.PNG4.PNG5.PNG

Do as I say, not as I do

We are Anonymous. We are Legion. We don't forgive. We don't forget

#7

جزاك الله كل خير اخي الكريم وان شاء الله ارد لك خبر اش صار معي

#8

شكرا لك اخي على تعاونك بس في نقطة بسالك عنها

الحين انا عملت الرول لثلاثة يوزر (Admin - Doctors- Patients)

ووصلت الى

التالي ارجو شرحها الله يجزاك بالخير لاني منتبدئة

ونقوم بإضافة حدث onLoggedIn="redirect" ونضيف التابع redirect() إلى ملف cs

تحياتي

#9

الـ Login control تملك method اسمها onLoggedIn يتم استدعاؤها عندما يتم تسجيل دخول المستخدم بنجاح، سنقوم نحن باستخدامها حتى نقوم بتحويل المستخدم إلى صفحة أخرى خاصة بلوحة التحكم (مثلاً)

عندما تقومين بإضافة الـ Login control سيتم إدراج الكود بالشكل:

<asp:Login runat="server"></asp:Login>

نحن سنقوم بالتعديل عليه بالشكل

<asp:Login runat="server" OnLoggedIn="redirect"></asp:Login>

الآن ننتقل إلى عرض الصفحة على شكل كود C# (مثلاً) بالنقر بالزر الأيمن على اسم الملف في المشروع واختيار View Code

سنقوم بإدراج الوظيفة redirect() هناك

سأضع كود الصفحة التجريبية كاملاً فقط ليتبين لك أين تتم الإضافة

using System;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;

public partial class Login : System.Web.UI.Page 
{
    protected void Page_Load(object sender, EventArgs e)
    {

    }

    protected void redirect(object sender, EventArgs e)
    {
        Response.Redirect("~/default.aspx");
    }
}

Do as I say, not as I do

We are Anonymous. We are Legion. We don't forgive. We don't forget

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

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

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

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

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