• ¡Welcome to Square Theme!
  • This news are in header template.
  • Please ignore this message.
مهمان عزیز خوش‌آمدید. ورود عضــویت


امتیاز موضوع:
  • 14 رای - 2.86 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
Title: مشکلاتي با تشخيص هويت
حالت خطی
#7
ممنون از راهنمايي خوبتون. با توجه به صحبت شما يه راه ديگه پيدا کردم که فکر مي کنم بهتر از قبليه باشه.
فکر کردم هر چي هست در اين دکمه لوگينه ديگه
خوب اينجا کوکي ايجاد ميشه
خوب اين کدهاي دکمه لوگين
کد:
protected void btn_login_Click(object sender, EventArgs e)
    {
        //if (Page.User.Identity.IsAuthenticated)
       // {

            //Response.Redirect("LogOut.aspx");
       // }
        if (GetMemberAuthenticate(txt_uname.Text, FormsAuthentication.HashPasswordForStoringInConfigFile(txt_pass.Text, "MD5")))
        {
            string role = GetMemberRoleByID(txt_uname.Text);
            DateTime expiration;
            if (chk_rememberme.Checked)
            {
                expiration = DateTime.Now.AddMonths(1);
            }
            else
            {
                expiration = DateTime.Now.AddMinutes(30);
            }
            FormsAuthenticationTicket AuthTicket = new FormsAuthenticationTicket(1, txt_uname.Text, DateTime.Now, expiration, false, role);
            string encryptedTicket = FormsAuthentication.Encrypt(AuthTicket);
            HttpCookie AuthCookie = new HttpCookie(FormsAuthentication.FormsCookieName, encryptedTicket);
            Response.Cookies.Add(AuthCookie);
            string[] temp = role.Split(',');
            for (int i = 0; i < temp.Length; i++)
            {
                if (temp[i]=="Admin")
                {
                    Response.Redirect("AdminPage.aspx");
                }  
            }

            Response.Redirect(FormsAuthentication.GetRedirectUrl(txt_uname.Text, chk_rememberme.Checked));
        }
        else
        {
            lbl_login.Visible = true;
        }
    }


خوب وقتي با نام کاربري جديد مي خواد وارد شه
دوباره يه کوکي با همون نام ايجاد ميشه و فکر مي کنم replace ميشه
که اون اتفاق مي افته

گفتم چه جوري نزارم وقتي يکي هنوز خارج نشده
و دوباره دکمه لوگين رو ميزنه کوکي قبلي replace بشه؟

اومدم اين طوري نوشتم در رويداد لوگين
کد:
protected void btn_login_Click(object sender, EventArgs e)
    {
        //if (Page.User.Identity.IsAuthenticated)
        //{

        //    Response.Redirect("LogOut.aspx");
        //}
        if (!Page.User.Identity.IsAuthenticated)
        {
        if (GetMemberAuthenticate(txt_uname.Text, FormsAuthentication.HashPasswordForStoringInConfigFile(txt_pass.Text, "MD5")))
        {
            string role = GetMemberRoleByID(txt_uname.Text);
            DateTime expiration;
            if (chk_rememberme.Checked)
            {
                expiration = DateTime.Now.AddMonths(1);
            }
            else
            {
                expiration = DateTime.Now.AddMinutes(30);
            }
            FormsAuthenticationTicket AuthTicket = new FormsAuthenticationTicket(1, txt_uname.Text, DateTime.Now, expiration, false, role);
            string encryptedTicket = FormsAuthentication.Encrypt(AuthTicket);
            
                HttpCookie AuthCookie = new HttpCookie(FormsAuthentication.FormsCookieName, encryptedTicket);


                Response.Cookies.Add(AuthCookie);
                string[] temp = role.Split(',');
                for (int i = 0; i < temp.Length; i++)
                {
                    if (temp[i] == "Admin")
                    {
                        Response.Redirect("AdminPage.aspx");
                    }
                }

                Response.Redirect(FormsAuthentication.GetRedirectUrl(txt_uname.Text, chk_rememberme.Checked));
            }
            else
            {
                lbl_login.Visible = true;
            }
        }
        else
        {
            lbl_login.Visible = true;
            lbl_login.Text = "کاربر محترم شما هم اکنون با نام کاربري ديگري وارد شده ايد. لطفاً ابتدا خارج شويد";
        }
    }
از نظر من که مسئله حل شده
حالا اگه شما کار من رو تأييد نمي کنيد لطفاً در ميون بزاريد.
پاورقي:
من فکر مي کردم اين قضيه حل شده و امروز اومدم يه سوال ديگه بپرسم که اين جواب رو ديدم و متأسفانه الآن وقت ندارم سر اين موضوع وقت زيادي بزارم
و برم لينکاي جديد اونم انگليسي بخونم.
اگه امکان داره براتون روي همين کدا نظر بديد و بگيد آيا اين کار جديد من رو تأييد مي کنيد؟
فکر کنم شما با موبايل جواب مي ديد و خودم مي دونم با موبايل نوشتن چقدر سخته بنابراين ازتون انتظار ندارم حتماً جواب بديد
 
پاسخ
  


پیام‌های این موضوع
مشکلاتي با تشخيص هويت - توسط aspdotnet - 11-22-2012، 09:24 AM
RE: مشکلاتي با تشخيص هويت - توسط aspdotnet - 11-22-2012، 12:00 PM
RE: مشکلاتي با تشخيص هويت - توسط aspdotnet - 11-22-2012، 01:11 PM
RE: مشکلاتي با تشخيص هويت - توسط aspdotnet - 11-23-2012، 12:39 PM
RE: مشکلاتي با تشخيص هويت - توسط aspdotnet - 11-25-2012، 09:53 AM

پرش به انجمن:


Browsing: 1 مهمان