PDA

View Full Version : سوال: ساخته نشدن کوکی در صورت وجود



sepehrforough
سه شنبه 26 فروردین 1393, 17:17 عصر
من یه صفحه لاگین دارم که این کوکی توش ساخته میشه




if(Membership.ValidateUser(txt_username.Text,txt_p assword.Text))
{
HttpCookie cookie = new HttpCookie("user");
cookie.Values["username"] = txt_username.Text;
cookie.Values["pass"] = txt_password.Text;
cookie.Expires = DateTime.Now.AddDays(1);
Response.Cookies.Add(cookie);
if(cookie!=null)
{
Response.Write("<p>" +cookie.Name + "<p>" + cookie.Value);
Response.Redirect("~/managment/Home.aspx");
}
else
{
Response.Redirect("~/managment/Logon.aspx");
}
}
else
{
lbl_loginmessage.Text="کلمه یا رمز عبور اشتباه است";
}



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

mRizvandi
چهارشنبه 27 فروردین 1393, 02:27 صبح
خب قبل از اینکه کوکی جدید رو بسازید یا اصلا کاربر رو احراز هویت کنید، ببنید که آیا کوکی از قبل ساخته شده یا نه؟
اگر ساخته شده مستقیم به صفحه مورد نظرببریدیش در غیر اینصورت بقیه کدها اجرا بشن.
در خصوص ذخیره کردن پسورد در کوکی بسیار مراقب باشید این عمل از نظر امنیتی کاملا منع شده است!

sepehrforough
چهارشنبه 27 فروردین 1393, 11:21 صبح
این دستور قبلش درسته؟



if (Response.Cookies["user"]["username"] != null)
{

Response.Write("شما وارد شده اید");
}

else
{
Response.Redirect("~/managment/Login.aspx");
}





یعنی تو کوکی ققط یوزرنیم رو ذخیره کنم؟ با اون فقط کار کنم؟

mRizvandi
چهارشنبه 27 فروردین 1393, 12:51 عصر
دوست عزیز برای خوندن کوکی باید از Request.Cookies[cookieName]استفاده کنید.
اگر مقدار برگشتی نال نباشه یعنی وجود داره.
دلیلتون برای ذخیره این اطلاعات توی کوکی چی هست؟ شاید اصلا نیازی به این کارها نباشه.