A.Yousefi
دوشنبه 04 اردیبهشت 1391, 23:12 عصر
سلام
من میخوام سیستم ورود به سایتمو خودم با استفاده از توسعه ی Membership خود دات نت بسازم.
البته نمیخوام مستقیم از ابزاری که تو بخش لاگینه استفاده کنم بلکه همه چیز حتی فرم لاگین رو خودم طراحی کردم.
برای اینکه صفحات مدیر سایت رو از بقیه جدا کنم اونارو تو یه پوشه قرار دادم و این کد رو نوشتم تو وب کانفیگه اصلی:
<
authentication mode="Forms">
<
forms loginUrl="~/NotLogin.aspx" timeout="2000" defaultUrl="~/Admin/Admin.aspx" name="MyCookie" />
</
authentication>
این تا اینجای کار،بعد یه وب کانفیگم تو پوشه ادمین اینجاد کردم و اینو نوشتم توش:
<
configuration>
<
system.web>
<
authorization>
<
deny users="?"/>
</
authorization>
</
system.web>
</
configuration>
به این ترتیب هر کسی بخواد پیجای تو این پوشرو ببینه باید قبلش لاگین کنه.
فرض کنید ادمین ما هم علی با رمز 123 هست پس کد دکمه لاگین هم اینه:
if
(txtUsername.Text=="Ali" && txtPassword.Text=="123")
{
FormsAuthentication.RedirectFromLoginPage(txtUsern ame.Text, chkRemember.Checked);
}
همه چیز اکیه و بخوبی کار میکنه،حالا یه سوال:
من میخوام یه پوشه هم برای کاربرای عضو(کارمند،مشتری یا هرچیز دیگه) در نظر بگیرم و ترتیبی بدم تا این کاربرا هم یه سری پیج هایی رو ببینن که کاربرای غیر عضو یا معمولی نمیتونن ببینن.
برای این منظور باید چیکار کنم؟
دوباره باید مثه همون ادمین عمل کنم و یه وب کانفیگ عین همون بندازم توش؟
موقع لاگین کردم چجوری باید عمل کنم؟
آیا باید موقع لاگین با استفاده از یه DropDownList از طرف بخوام نقش کارمند یا ادمینو انتخاب کنه بعد لاگین بزنه؟
در این صورت کد دکمه لاگین چی میشه؟
تو وب کانفیگ اصلیم باید چه تغییراتی بدم؟
آخه اونجا گفتم : defaultUrl=~/Admin/Admin.aspx
ولی این کد برا وقتیه که فقط یه کاربر داشته باشم و اونو بعد لاگین به پیج ادمین هدایت کنم.
الان که میخوام دو تا کاربر داشته باشم و بعد زدن دکمه لاگین با توجه به انتخاب گزینه ادمین یا کارمند از کمبوباکس اونو به صفحه مورد نظر هدایت کنم باید چیکار کنم؟
ممنون میشم راهنماییم کنین.
من میخوام سیستم ورود به سایتمو خودم با استفاده از توسعه ی Membership خود دات نت بسازم.
البته نمیخوام مستقیم از ابزاری که تو بخش لاگینه استفاده کنم بلکه همه چیز حتی فرم لاگین رو خودم طراحی کردم.
برای اینکه صفحات مدیر سایت رو از بقیه جدا کنم اونارو تو یه پوشه قرار دادم و این کد رو نوشتم تو وب کانفیگه اصلی:
<
authentication mode="Forms">
<
forms loginUrl="~/NotLogin.aspx" timeout="2000" defaultUrl="~/Admin/Admin.aspx" name="MyCookie" />
</
authentication>
این تا اینجای کار،بعد یه وب کانفیگم تو پوشه ادمین اینجاد کردم و اینو نوشتم توش:
<
configuration>
<
system.web>
<
authorization>
<
deny users="?"/>
</
authorization>
</
system.web>
</
configuration>
به این ترتیب هر کسی بخواد پیجای تو این پوشرو ببینه باید قبلش لاگین کنه.
فرض کنید ادمین ما هم علی با رمز 123 هست پس کد دکمه لاگین هم اینه:
if
(txtUsername.Text=="Ali" && txtPassword.Text=="123")
{
FormsAuthentication.RedirectFromLoginPage(txtUsern ame.Text, chkRemember.Checked);
}
همه چیز اکیه و بخوبی کار میکنه،حالا یه سوال:
من میخوام یه پوشه هم برای کاربرای عضو(کارمند،مشتری یا هرچیز دیگه) در نظر بگیرم و ترتیبی بدم تا این کاربرا هم یه سری پیج هایی رو ببینن که کاربرای غیر عضو یا معمولی نمیتونن ببینن.
برای این منظور باید چیکار کنم؟
دوباره باید مثه همون ادمین عمل کنم و یه وب کانفیگ عین همون بندازم توش؟
موقع لاگین کردم چجوری باید عمل کنم؟
آیا باید موقع لاگین با استفاده از یه DropDownList از طرف بخوام نقش کارمند یا ادمینو انتخاب کنه بعد لاگین بزنه؟
در این صورت کد دکمه لاگین چی میشه؟
تو وب کانفیگ اصلیم باید چه تغییراتی بدم؟
آخه اونجا گفتم : defaultUrl=~/Admin/Admin.aspx
ولی این کد برا وقتیه که فقط یه کاربر داشته باشم و اونو بعد لاگین به پیج ادمین هدایت کنم.
الان که میخوام دو تا کاربر داشته باشم و بعد زدن دکمه لاگین با توجه به انتخاب گزینه ادمین یا کارمند از کمبوباکس اونو به صفحه مورد نظر هدایت کنم باید چیکار کنم؟
ممنون میشم راهنماییم کنین.