PDA

View Full Version : سوال: ورود به صفحه لاگین شده بدون خروج



MS.Worm
پنج شنبه 18 آبان 1391, 22:31 عصر
سلام و خسته نباشید

در یک صفحه با گرفتن نام و کلمه عبور کاربر وارد سایت میشود. (پروژه ثبت نام دانشجو)

برای مثال حالا که دانشجو با نام و کلمه عبورش وارد شد: از صفحه لاگین به صفحه اول سایت میرود. در اینجا اگر با کلید back مرورگر به صفحه لاگین برگردد دوباره با کلید forward به صفحه اول میرود. چجوری میتونم از این کار جلوگیری کنم؟

یعنی اگر back رو زد و به لاگین رفت دوباره باید نام و کلمه عبور رو بزنه تا وارد بشه دیگه با کلید forward نتونه با همون نام وارد بشه.

masoud60
پنج شنبه 18 آبان 1391, 22:40 عصر
سلام
مقدار کد زیر رو کنترل کن
Request.IsAuthenticated




---------------------------
http://www.kohan-co.net

MS.Worm
پنج شنبه 18 آبان 1391, 22:45 عصر
متوجه نمیشم. من هر جور تست میکنم این مقدارش true هست

من با کنترل های کاربر، صفحه لاگین درست نکردم.

خودم دوتا تکس باکس گذاشتم که متصل میشه به اس کیو ال اگر درست بود میره به صفحه اصلی، حالا اینی که شما میگید چجوره؟

یادم هست خیلی وقت پیش این مشکل رو با session رفع کردم ولی الان یادم نیست چجور استفاده کردم.

ممنون میشم کمک کنید

hamid_kha
پنج شنبه 18 آبان 1391, 23:01 عصر
متوجه نمیشم. من هر جور تست میکنم این مقدارش true هست

من با کنترل های کاربر، صفحه لاگین درست نکردم.

خودم دوتا تکس باکس گذاشتم که متصل میشه به اس کیو ال اگر درست بود میره به صفحه اصلی، حالا اینی که شما میگید چجوره؟

یادم هست خیلی وقت پیش این مشکل رو با session رفع کردم ولی الان یادم نیست چجور استفاده کردم.

ممنون میشم کمک کنید
با سلام
یکی از روشها استفاده از Session هست که خودتون بهش اشاره کردید
موفق باشید
توی فروم یه سرچی کنی مطالبی در این مورد رو پیدا میکنی

masoud60
پنج شنبه 18 آبان 1391, 23:33 عصر
من معذرت میخواهم چون جوابم خیلی ناقص بود شما برای اینکه بتونید از این دستور استفاده کنید باید authentication mode رو توی web.config بصورت زیر تنظیم کنید
<authentication mode="Forms">
<forms loginUrl="Login.aspx" />
</authentication>
آدرس و نام صفحه لاگین رو هم باید درست بدید



-------------------------
http://www.kohan-co.net

mohsen4707
جمعه 19 آبان 1391, 21:05 عصر
سلام و خسته نباشید

در یک صفحه با گرفتن نام و کلمه عبور کاربر وارد سایت میشود. (پروژه ثبت نام دانشجو)

برای مثال حالا که دانشجو با نام و کلمه عبورش وارد شد: از صفحه لاگین به صفحه اول سایت میرود. در اینجا اگر با کلید back مرورگر به صفحه لاگین برگردد دوباره با کلید forward به صفحه اول میرود. چجوری میتونم از این کار جلوگیری کنم؟

یعنی اگر back رو زد و به لاگین رفت دوباره باید نام و کلمه عبور رو بزنه تا وارد بشه دیگه با کلید forward نتونه با همون نام وارد بشه.
باسلام .
دوست عزيز از Cookie استفاده كن و يه شرط بذار اگه( if (Request.Cookies["LastVisit"] != null برو به فلان صفحه.

r_s1389@yahoo.com
جمعه 19 آبان 1391, 22:33 عصر
به نظر من شما دارین حتما نام کاربری و رمز عبور در یک کوکی یا سژن میریزید و در این صورت اگر مقدار انها رو حذف نکنید حذف نمیشه
و اون مشکل پیش نمیاد

mhq1368
شنبه 20 آبان 1391, 07:58 صبح
سلام شما اگه از کد زیر استفاده کنید شاید مشکلتون حل بشه
این کد یه اسکریپته که اگه تو صفحه مورد نظرتون قرار بدید وقتی به یه صفحه ی دیگه برید دیگه به صفحه قبل بر نمیگرده
<script type="text/javascript" language="javascript">
function disableBackButton() {
window.history.forward()
}
disableBackButton();
window.onload = disableBackButton();
window.onpageshow = function (evt) { if (evt.persisted) disableBackButton() }
window.onunload = function () { void (0) }
</script>

MS.Worm
یک شنبه 21 آبان 1391, 12:56 عصر
ممنون از پاسخی که دادین

دوستان من از سیشن استفاده میکنم.

2تا صفحه دارم یکی به نام دیفالت یکی هم به نام خانه (Home)

در صفحه دیفالت 2تا تکس باکس دارم که نام و کلمه عبور رو میگیره با بانک تطبیق میده اگر درست بود میریزه داخل سیشن و میره به صفحه خانه میره. حالا در صفحه خانه در فورم لود نوشتم که اگر مثلا سیشن نام برابر خالی بود برگرد به صفحه دیفالت. تا اینجای کار اگر به صورت دستی کاربر آدرس صفحه خانه رو بزنه برمیگرده به صفحه دیفالت یعین نام و کلمه عبور نزنه. فقط مشکل یکجاست. برای مثال من نام و کلمه عبور رو درست وارد میکنم و وارد صفحه خانه میشم. حالا اگر با کلید back خود مرورگر برگردم به صفحه دیفالت و کلید forward مرورگر رو بزنم میره به صفحه خانه.

دقیقا میخوام مثل سایت سامانه های دانشجویی درست کنم. شما وقتی شماره دانشجویی و کلمه عبور رو میزنی میری به صفحه خانگی خودت حالا اگر back رو بزنی برمیگردی به صفحه لاگین و با کلید forward هم دیگه وارد صفحه خانگی نمیشی تا شماره دانشجویی و کلمه عبور رو نزنی.

ممنون میشم راهنمایی کنید.

اینم از کدهایی که نوشتم: داخل کلید لاگین اینجور سیشن رو پُر میکنم:

Session["aa"] = "1";

داخحل فورم لود صفحه دوم یا همان صفحه خانگی این کد رو زدم:

if (Convert.ToString(Session["aa"]) != "1")
{
Response.Redirect("Default.aspx");
}

داخل فورم لود صفحه اول هم اینجور سیشن رو خالی میکنم:

Session["aa"] = "0";

masoud60
دوشنبه 22 آبان 1391, 11:41 صبح
سلام


سلام و خسته نباشید

در یک صفحه با گرفتن نام و کلمه عبور کاربر وارد سایت میشود. (پروژه ثبت نام دانشجو)

برای مثال حالا که دانشجو با نام و کلمه عبورش وارد شد: از صفحه لاگین به صفحه اول سایت میرود. در اینجا اگر با کلید back مرورگر به صفحه لاگین برگردد دوباره با کلید forward به صفحه اول میرود. چجوری میتونم از این کار جلوگیری کنم؟

یعنی اگر back رو زد و به لاگین رفت دوباره باید نام و کلمه عبور رو بزنه تا وارد بشه دیگه با کلید forward نتونه با همون نام وارد بشه. session فقط یه ایراد داره. با کلید back , forward از بین نمیره و تا صفحه باز هست مقدار session رو حفظ میکنه

MS.Worm
دوشنبه 22 آبان 1391, 16:15 عصر
پس دوساتم من چجوری این مشکل ور حل کنم؟
از چی استفاده کنم؟

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

با تشکر

fakhravari
دوشنبه 22 آبان 1391, 17:00 عصر
با سلام
در این مورد مثلا یکی دکمه خروج زده بعد با بک مرورگر بیاد در صفحه مدیریتیش.
حالا تا مدیریتیشم اومد بعد از هر درخواستی که بره سمت سرور چون هویتش معلوم نی برگشت میخوره.

در مورد این بک مرورگر فکر کنم تنها راه جلوگیری سمت کلاینت باشه.
دوستان در این مورد نظر بدن.

bftarane
پنج شنبه 02 آذر 1391, 08:54 صبح
بچه ها کسي جواب اين مشکل رو پيدا نکرد؟

hgh.just.hony
پنج شنبه 02 آذر 1391, 11:53 صبح
شما می خوای وقتی کاربرت از محیط پوفایلش حالا به هر دلیلی حارج شد کلا logout بشه البته اگه من درست فهمیده باشم.
خب نظرت با تعریف یه متد که کارش این باشه چیه:
متد:
ادرس صفحه را بگیر ---اگر تو پروفایل نیست پس sessin.abondon() کن
راستی اگر می خوای بعد از logout با backward مرورگرت به صفحه پروفایلت برنگردی ابنو (http://www.codeproject.com/Questions/208643/how-to-prevent-back-button-after-logout-in-asp-net)ببین
say me if it helps u:کف:

nathan
پنج شنبه 02 آذر 1391, 17:45 عصر
من خيلي تازه كارم ولي فكر كنم بايد كاري كني تا هر بار كه اين صفحه باز ميشه اگه Sessionي هم موجود هست پاك بشه و طوري با صفحه رفتار كنه كه انگار بار اولشه كه داره لود ميشه.

bftarane
جمعه 03 آذر 1391, 12:28 عصر
راستی اگر می خوای بعد از logout با backward مرورگرت به صفحه پروفایلت برنگردی ابنو (http://www.codeproject.com/Questions/208643/how-to-prevent-back-button-after-logout-in-asp-net)ببین
say me if it helps u:کف:
بله خيلي کمکم کرد ولي هنوز به نتيجه قطعي نرسيدم چون نمي خوام کش مرورگر غيرفعال بشه چون يه از jquery تو سايتم استفاده کردم و مي خوام دفعات بعد سرعت لود بيشتر از دفعه اول باشه.
حالا بازم تحقيق مي کنم ببينم چي ميشه.:لبخندساده: