50٪ تخفیف روی تمام دوره‌ها!
پایان تخفیف تا:
مشاهده دوره‌ها
0

صفحه لاگین با قابلیت تعیین دسترسی

با عرض سلام،ادب و احترام

من در صفحه لاگین خود دکمه افزودن کاربر را دارم.با زدن این دکمه پنجره زیر نمایان می شود.چک باکس هایی که در تصویر دیده می شود،فیلدهایی است که در برنامه به کاربر اجازه ویرایش و دسترسی به آن ها را می دهد؛یعنی هر کاربری که تعریف می شود،تنها اجازه ویرایش قسمت هایی را دارد که تیک خورده اند و به بقیه قسمت ها دسترسی ندارد.

چگونه برای این برنامه باید کد نویسی کنم؟

با عرض سلام،ادب و احترام
من در صفحه لاگین خود دکمه افزودن کاربر را دارم.با زدن این دکمه پنجره زیر نمایان می شود.چک باکس هایی که در تصویر دیده می شود،فیلدهایی است که در برنامه به کاربر اجازه ویرایش و دسترسی به آن ها را می دهد؛یعنی هر کاربری که تعریف می شود،تنها اجازه ویرایش قسمت هایی را دارد که تیک خورده اند و به بقیه قسمت ها دسترسی ندارد.
چگونه برای این برنامه باید کد نویسی کنم؟ 


||https://tosinso.com/files/get/3f11b49d-2b46-4dd3-aeab-97e9b711ebdf||
پرسیده شده در 1396/06/12 توسط

1 پاسخ

1

سلام و عرض ادب، شما معمولاً کاری که باید بکنید یه صفحه جداگانه برای ایجاد کاربر ایجاد کنید، یک صفحه جداگانه هم برای ورود به سیستم. چون با این روش، کاربری که وارد برنامه میشه به راحتی می تونه کاربر مورد نظرش رو با دسترسی هایی که میخواد ایجاد کنه.

موضوع بعد اینکه شما دقیقاً برای کدوم بخش مشکل دارید؟ چون سوالتون که چجوری باید پیاده سازی کنم خیلی کلی هست. اگر بخوام به صورت کلی بگم، شما باید یک جدول برای لیست کل دسترسی های سیستم داشته باشید:

create table Roles
(
[Id] int identity not null primary key,
[key] nvarchar(100) not null,
[Title] nvarchar(200) not null
);
go

یک جدول دیگه برای لیست کاربرها:

create table Users
(
[Id] int identity not null primary key,
[Username] nvarchar(100) not null,
[Password] nvarchar(30) not null
);
go

و در نهایت باید جدولی داشته باشید که ارتباط بین کاربرها و دسترسی ها رو مشخص کنه که چند به چند هست این جدول:

create table [UsersRoles]
(
[UserId] int not null references Users([Id]),
[RoleId] int not null references Roles([Id]),
primary key([UserId],[RoleId])
);
go

تو برنامتون از جدول Roles لیست دسترسی ها رو بخونید و داخل لیست باکس نمایش بدید. با ایجاد کاربر، دسترسی هایی که چک خورده رو داخل جدول UsersRoles اضافه کنید. برای ویرایش هم با تغییر آیتم های چک شده، یکبار لیست Role های هر کاربر رو از جدول UsersRoles حذف کنید و دسترسی های جدید رو مجدد به جدول اضافه کنید.

پیاده سازیش داخل برنامه هم که دیگه برای خوندن و درج و حذف رکورد ها مشخص هست که چطور باید اینکار انجام بشه.

پاسخ در 1396/06/12 توسط

پاسخ شما