PDA

View Full Version : آدرس صفحات



archi
شنبه 13 تیر 1383, 21:53 عصر
سلام
من برای برنامه ام یه فرم Login درست کردم که اگه کاربر Username, password رو درست وارد کنه یه صفحه دیگه مثلا Page2.aspx نشون داده میشه . حالا مشکلم اینه که اگه کاربر مستقیما بیاد آدرس صفحه دوم رو بده که میتونه بهش دسترسی داشته باشه

sanaz_amiri
یک شنبه 14 تیر 1383, 00:09 صبح
سلام
آرچی جان یه راه حل اینکه توی صفحه login.aspx بعد از اینکه معتبر بودن اسم کاربر رو بررسی کردی توی یه session مثل session("username ") اسم کاربر رو ذخیره کنی

بعد توی صفحه دومت page2.aspx تو page_load اول بررسی کن که ایا session("username ")
خالیه یا نه
اگر خالی بود همون جا response.redirect کن به یه صفحه و اونجا بگو که usre لاگین نکرده و باید به سمت صفحه login هدایتش کن

اما اگر پر بود user میتونه حتی با استفاده از اون session یه پیام خوش آمد داشته باشه

اینجوری اگه user ای آدرس صفحه دوم رو بده چون session خالیه صفحه دوم باز نمیشه براش


این راه مشکل شما رو حل میکنه
اگه دوستان راه بهتری هم میدونن
منم خوشحال میشم که راهنمایی کنین

Mahdavi
یک شنبه 14 تیر 1383, 00:41 صبح
یکی دیگه از روشها استفاده از خوده دات نت هستش :
برای اینکار ابتدا در فایل web.config قسمت <authentication> رو پیدا و ویرایش کنید :


<configuration>
<system.web>
<authentication mode="Forms">
<forms loginUrl="Login.aspx">
</forms>
</authentication>
</system.web>
</configuration>

و در زمانی که کاربر login کرد کد زیر رو بعد از چک درست بودن کاربر اضافه کنید :


//If valid, redirect to protected resource
FormsAuthentication.RedirectFromLoginPage(txUserNa me.Text,CookieValue);


و موقعه خروج از سایت :


FormsAuthentication.SignOut()

این یه روشه . اما با استفاده از دو روش دیگه هم می تونی کاربراتو چک کنی.
برای اطلاعات بیشتر به آدرسهای زیر مراجعه کن :

http://www.c-sharpcorner.com/Code/2003/March/SecureSiteWithASPNET.asp
http://www.c-sharpcorner.com/Code/2003/May/SecureSiteWithASPNET2.asp

موفق باشید