PDA

View Full Version : مبتدی: چه کدی برای دکمه ی خروج از قسمت مدیریت سایت باید نوشت؟



مَه سما
سه شنبه 23 مهر 1392, 15:39 عصر
توی قسمت مدیریت سایت می خوام یه دکمه بذارم که عمل خروج از قسمت مدیریت رو انجام بده. حالا پشت این دکمه باید چه کدی بنویسم که وقتی کلیک میشه دیگه نتونه بدون وارد کردن کلمه ی عبور و نام کاربری و یا با زدن دکمه ی Backspace دوباره وارد صفحه ی مدیریت سایت بشه؟:متفکر:
البته با ASP و C# .
لطفا به زبان ساده و روان بگید چون بسیار مبتدی و تازه کار هستم:خجالت:

farhud
سه شنبه 23 مهر 1392, 19:14 عصر
برای عضویت‏، از Membership خود ASP.NET استفاده کرده اید و یا خودتان جداول را طراحی کرده‌اید؟

مَه سما
چهارشنبه 24 مهر 1392, 12:54 عصر
خودم یه جدول به اسم Admin درست کردم و برای دکمه ی ورود هم کد زیر رو نوشتم :
try
{
var con = new SqlConnection(ConfigurationManager.ConnectionStrin gs["VermiCompostConnectionString"].ToString());
con.Open();
var cmd = new SqlCommand("select * from [tblAdmin] where (AdminUserName ='" + txtUserName.Text + "')AND( AdminPass ='" + txtPassword.Text + "')", con);
cmd.Parameters.AddWithValue("@AdminUserName", txtUserName.Text);
cmd.Parameters.AddWithValue("@AdminPass", txtPassword.Text);
cmd.CommandType = CommandType.Text;
SqlDataReader rdr = cmd.ExecuteReader();
if (rdr.Read())
{
Session["AdminUserName"] = "txtUserName";
Session["AdminPass"] = "txtPassword";
txtUserName.Text = string.Empty;
txtPassword.Text = string.Empty;
Response.Redirect("ManageAdmin.aspx");
cmd.Connection.Close();
}

else
if (txtUserName.Text == "" && txtPassword.Text == "")
{
LblErrorMessage.Visible = true;
LblErrorMessage.Text = "لطفا نام کاربری و کلمه ی عبور را وارد نمایید";
return;
}
else
if (txtUserName.Text == "" || txtPassword.Text == "")
{
LblErrorMessage.Visible = true;
LblErrorMessage.Text = "نام کاربری یا کلمه ی عبور را وارد نکرده اید";
return;
}
else
if (!rdr.Read())
{
LblErrorMessage.Visible = true;
LblErrorMessage.Text = "اطلاعات وارد شده اشتباه می باشد";
return;
}
}
catch
{
LblErrorMessage.Visible = true;
LblErrorMessage.Text = "لطفا اطلاعات درست را وارد کنید";
}

برای دکمه ی خروج هم که در قسمت مدیریت سیستم قرار داره کد زیر رو نوشتم ولی وقتیکه مدیر دکمه ی خروج رو میزنه و دوباره وارد صفحه ی لاگین میشه اگه دکمه ی Backspace رو بزنه باز هم وارد صفحه ی مدیریت میشه البته بدون وارد کردن نام کاربری و رمز عبور! که نباید اینجوری باشه. کد به این صورت هست:
Session["AdminUserName"] = null;
Session["AdminPass"] = null;
Response.Redirect("Login.aspx");

fakhravari
چهارشنبه 24 مهر 1392, 14:55 عصر
در پیج لود صفحه
Session["AdminUserName"] = null
بزار بعد هر پستبک چک میشه.
اون back هم مربوط به مرورگر است

مَه سما
پنج شنبه 25 مهر 1392, 22:27 عصر
در پیج لود صفحه
Session["AdminUserName"] = null
بزار بعد هر پستبک چک میشه.
اون back هم مربوط به مرورگر است



خب من این کار رو توی رویداد دکمه ی خروج انجام دادم که وقتی دکمه ی خروج رو می زنه هر دو تا سشن مربوط به نام کاربری و رمز عبور رو خالی می کنه. ولی وقتی دوباره آدرس یکی از صفحات قسمت مربوط به مدیریت رو در مرورگر وارد می کنم اون صفحه بدون در نظر گرفتن اینکه نام کاربری و رمز عبور وارد نشده باز میشه! حتی بعد از خروج با زدن Back هم دوباره وارد همون صفحه می شه!

عرفان طباطبایی
پنج شنبه 25 مهر 1392, 23:33 عصر
خب من این کار رو توی رویداد دکمه ی خروج انجام دادم که وقتی دکمه ی خروج رو می زنه هر دو تا سشن مربوط به نام کاربری و رمز عبور رو خالی می کنه. ولی وقتی دوباره آدرس یکی از صفحات قسمت مربوط به مدیریت رو در مرورگر وارد می کنم اون صفحه بدون در نظر گرفتن اینکه نام کاربری و رمز عبور وارد نشده باز میشه! حتی بعد از خروج با زدن Back هم دوباره وارد همون صفحه می شه!
با سلام برای اینکه این اتفاق نیفته در موقع ورود اگر اطلاعات درست وارد شد یه Session براش بساز بعد یه لیبل می زاری تو Page Load می نویسی لیبله برابر با اون Session بعد می نوسی اگه لیبله برابر بود با Session تو صفحه بمونه در غیر این صورت به صفحه ی لاگین برگرده.

aminireza65
جمعه 26 مهر 1392, 00:39 صبح
کش مرورگر
کش مرورگر
کش مرورگر
کش مرورگر
راه حل مشکلت اینه که کش مرورگر رو تو رویداد لود صفحات یا سایت مستر خالی کنی .
در این صورت اگه سشن خالی بشه دیگه راهی نداره که برگرده به اون صفحه.
به این صورت:
Response.Cache.SetCacheability(HttpCacheability.No Cache);
Response.ExpiresAbsolute = DateTime.Now.AddMinutes(-1);
Response.Cache.SetNoStore();

543310
جمعه 26 مهر 1392, 01:15 صبح
اگه از کلاس FrmsAuthentication استفاده میکنی این کد و بنویس :

FormsAuthentication.SignOut();

Power.Csharp
جمعه 26 مهر 1392, 01:24 صبح
بهترین روش استفاده از سیژن در صفحه مدیریت هستش.و وقتی دکمه خروج رو می زنه sessio بر اساس نام و یا همه آنها را به همراه کوکی ها کلیر کنی اونوقت بخواد بک بزنه و فرم رو لود کنه با سیژن خالی روبرو میشه در اینجا با استفاده از تری و کش می تونی به یک صفحه خطا و یا فرم اصلی هدایتش کنی

sasanrstm
جمعه 26 مهر 1392, 09:28 صبح
برای اینکه صفحه لاگین باز نشه یه کد جاوا هست که بک مرور گر رو از کار میندازه واسه سوال دومیت هم همونی که دوستان گفتن شرط بزار تو پیج لود صفحه بعدی که اگه سشن نال بود اجازه ورود نده

if( sestion["AdminUserName"]!=null
{
کد هائی که میخوائی اجرا بشه اگه کدی برای اجرا داشته باشی
}
else
{
responce.redrict(" صفحه ارور")
}

اگه یه کئوری استرینق هم بدی موقع ورود با همین سشن بد نیست.

sasanrstm
جمعه 26 مهر 1392, 17:00 عصر
این هم کد از کار انداختن بک مرورگر تو هر صفحه ای که میخوائی با زدن بک مرور گر دوباره تو اونصفحه نره .


<script language="javascript" type="text/javascript">
function Down()
{
window.history.forward();
}
</script>
کد بالا تو هید صفحه و کد پائینی که معلومه جاش کجاست


<body onload="Down()" onpageshow="if (event.persisted) noBack();" onunload="">