PDA

View Full Version : سوال: مدیریت سایت



mohammad abedi
سه شنبه 24 مرداد 1391, 11:08 صبح
با سلام

1- از نظر شما دوستان مدیریت سایت باید دارای پنلی جداگانه باشد یا زمانی که ادمین وارد سایت شد و دارای دسترسی بود بتونه قسمتهای مورد نظرشو ادیت کنه

2- من تا به الان مدیریت سایتهام همگی دارای پنل جداگانه بوده ولی در این پروژه جدیدم باید توی همون صفحه این کار انجام بشه ، حالا از دوستان راهنمایی میخوام که چگونه این کارو انجام بدم که وقتی یوزری وارد سایت شد (login) و دارای دسترسی ادمین بود بتونه قسمتهای مختلف سایتشو (اخبار ، گالری ، لینکها ، مقالات و ...) ویرایش کنه (اضافه ، ویرایش ، حذف) ؟؟!!

لطفا راهنماییم کنید

مرسی

h_r_sh
سه شنبه 24 مرداد 1391, 12:59 عصر
می تونید صفحات مربوط به مدیر رو در یه پوشه جداگانه مثلا AdminConsole قرار بدید و در یک فایل Web.Config در همون پوشه به صورت زیر، دسترسی رو تعریف کنید:

<?xml version="1.0" encoding="utf-8"?>
<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">

<system.web>
<authorization>
<allow roles="Admin" />
<deny users="*" />
</authorization>
</system.web>

</configuration>

به علاوه، می تونید از کد زیر هم برای تشخیص اینکه اگر کاربر مدیر هست، به یه چیزایی دسترسی داشته باشه یا نه، استفاده کنید:

if (User.IsInRole("Admin"))
{
//do or NOT some things
}

mohammad abedi
سه شنبه 24 مرداد 1391, 14:41 عصر
فکر میکنم منظور منو خوب متوجه نشدید
شما فکر کنید در سایت مورد نظر login کردید و بعد به هر قسمت از سایت که میرید دکمه های جدیدی کنار اون قسمت میبینید که برای ویرایش اون قسمت هست دیگه احتیاجی نیست که به قسمت پنل مدیریت سایت برید و در اون قسمت تغییراتتونو اعمال کنید

h_r_sh
چهارشنبه 25 مرداد 1391, 12:41 عصر
فکر میکنم منظور منو خوب متوجه نشدید
شما فکر کنید در سایت مورد نظر login کردید و بعد به هر قسمت از سایت که میرید دکمه های جدیدی کنار اون قسمت میبینید که برای ویرایش اون قسمت هست دیگه احتیاجی نیست که به قسمت پنل مدیریت سایت برید و در اون قسمت تغییراتتونو اعمال کنید

اتفاقا منظور شما رو خوب متوجه شدم. به این کد دقت کنید:

if (User.IsInRole("Admin"))
{
//do or NOT some things
}


این کد به طور ساده، همون کاری رو می کنه که شما می خوای. مثلا فرض کنید در یک صفحه لینکی هست که فقط مدیر می تونه اون ببینه:

if (User.IsInRole("Admin"))
{
Link1.Visible = true;
}