none
Login işleminde sorun... RRS feed

  • Soru

  • her giriş denememde neden hep else e("Şifre hatalı!") gidiyor...ne yapabilirim?teşekkürler...

     void Login()
        {
            string connStr = ConfigurationManager.ConnectionStrings["CS"].ConnectionString;
            SqlConnection conn = new SqlConnection(connStr);
            try
            {
                conn.Open();
                string cmdStr = "select count(*) from Admin where KullaniciAdi='" + tbUN.Text + "'";
                SqlCommand checkUser = new SqlCommand(cmdStr, conn);
                int temp = Convert.ToInt32(checkUser.ExecuteScalar().ToString());
                if (temp == 1)
                {
                    string cmdStr1 = "select Parola from Admin where KullaniciAdi='" + tbUN.Text + "'";
                    SqlCommand pass = new SqlCommand(cmdStr1, conn);
                    string password = pass.ExecuteScalar().ToString();
                    conn.Close();
    
                    if (password == tbPass.Text)
                    {
                        Session["New"] = tbUN.Text;
                        Response.Redirect("Default.aspx");
                    }
                    else
                    {
                        lblW.Text = "Şifre hatalı!";
                    }
                }
                else
                {
                    lblW.Text = "Kullanıcı adı hatalı!";
                }
            }
            catch (Exception ex)
            {
                lblW.Text = ex.Message;
            }
        }
    
        protected void bLogin_Click(object sender, EventArgs e)
        {
            Login();
        }



    Plies - See Nann Nigga

    Scope Piskopos - Ben 46 Raporlu Bir Deliyim

    Ben başarısız olmadım, sadece işin bu şekilde yapılmayacağının bir çok yolunu buldum ve işin nasıl yapılacağına da bir çok defa yaklaştım.


    8 Kasım 2012 Perşembe 14:12

Yanıtlar

  • tabi ki paylaşırım, buradaki konuyu havada bırakmam emin olun ;) çözüme ulaşmayınca konular havada kalır ancak...neyse...

    şimdi login sistemini değiştirdim sorun çözüldü...

    gönderen:

    void Login()
        {
            string connStr = ConfigurationManager.ConnectionStrings["CS"].ConnectionString;
            SqlConnection conn = new SqlConnection(connStr);
            string query = "select * from Admin where KullaniciAdi=@KullaniciAdi and Parola=@Parola";
            SqlCommand cmd = new SqlCommand(query, conn);
            cmd.Parameters.Add("@KullaniciAdi", SqlDbType.NVarChar, 20);
            cmd.Parameters["@KullaniciAdi"].Value = tbUN.Text;
            cmd.Parameters.Add("@Parola", SqlDbType.NChar, 8);
            cmd.Parameters["@Parola"].Value = tbPass.Text;
            conn.Open();
            SqlDataReader sdr = cmd.ExecuteReader();
            if (sdr.Read())
            {
                Session["Logged"] = Convert.ToInt32(sdr["aID"]);
                Response.Redirect("Default.aspx");
            }
            else
            {
                lblW.Text = "Kullanıcı adı veya şifre yanlış";
            }
        }

    alan:

    if (Session["Logged"] != null)
            {
                string connStr = ConfigurationManager.ConnectionStrings["CS"].ConnectionString;
                SqlConnection conn = new SqlConnection(connStr);
                string query = "select * from Admin where aID=@aID";
                SqlCommand cmd = new SqlCommand(query, conn);
                cmd.Parameters.Add("@aID", SqlDbType.Int);
                cmd.Parameters["@aID"].Value = Session["Logged"];
                conn.Open();
                SqlDataReader sdr = cmd.ExecuteReader();
                while (sdr.Read())
                {
                    libLogin.Text = sdr["KullaniciAdi"].ToString();
                }
            }
            else
            {
                Response.Redirect("Login.aspx");
            }


    Plies - See Nann Nigga

    Scope Piskopos - Ben 46 Raporlu Bir Deliyim

    Ben başarısız olmadım, sadece işin bu şekilde yapılmayacağının bir çok yolunu buldum ve işin nasıl yapılacağına da bir çok defa yaklaştım.

    12 Kasım 2012 Pazartesi 12:24

Tüm Yanıtlar

  • Hocam kolay gelsin ...login gercekden cok cayip olmus buna gerek yok.:) optimal de değil.

    kodun hata vermesinin sebebide password excute sclar demisin yani row sayisini almiş password karşilastırmsın heralde ondan hata veriyor.Executenonequey alırsan hatadan kurtulursun .kolay gelsin

    8 Kasım 2012 Perşembe 18:59
  • her iki executescalar ı da executenonquery yaptım, bu sefer de kullanıcı adı hatalı diyor....

    Plies - See Nann Nigga

    Scope Piskopos - Ben 46 Raporlu Bir Deliyim

    Ben başarısız olmadım, sadece işin bu şekilde yapılmayacağının bir çok yolunu buldum ve işin nasıl yapılacağına da bir çok defa yaklaştım.

    9 Kasım 2012 Cuma 09:21
  • http://www.youtube.com/watch?v=UGX_A56Q0Nc

    burhansuleymanvural@windowslive.com

    9 Kasım 2012 Cuma 12:52
  • teşekkürler, hemen bakıyorum ben de bundan yapmıştım... 4. part..

    Plies - See Nann Nigga

    Scope Piskopos - Ben 46 Raporlu Bir Deliyim

    Ben başarısız olmadım, sadece işin bu şekilde yapılmayacağının bir çok yolunu buldum ve işin nasıl yapılacağına da bir çok defa yaklaştım.

    9 Kasım 2012 Cuma 13:17
  • herşeyi sorunsuz bir şekilde yatım sıkıntı yok ancak işin içinde session olmadığından kullanıcının adını yazdıramıyorum  ve yazdıramadığım için de haliyle logout da yapamıyorum....aşağıdaki kodlar sorunsuz bir şekilde çalışıyor....ancak dediğim gibi session olayı ne denediysem yapamadım...bunu da çözersek tamamdır...teşekkürler...

    Login.aspx.cs

    void Login()
        {
            string connStr = ConfigurationManager.ConnectionStrings["CS"].ConnectionString;
            SqlConnection conn = new SqlConnection(connStr);
            try
            {
                conn.Open();
                string s = "select count(*) from Admin";
                s += " where KullaniciAdi='" + tbUN.Text + "'";
                s += " AND Parola='" + tbPass.Text + "'";
                SqlCommand checkUser = new SqlCommand(s, conn);
                int temp = Convert.ToInt16(checkUser.ExecuteScalar());
                if (temp == 0)
                {
                    lblW.Text = "Giriş başarısız!";
                }
                else
                {
                //    Session["Logged"] = tbUN.Text;
                //    LinkButton lib = ((LinkButton)this.Master.FindControl("libLogout"));
                //    lib.Text = Session["Logged"].ToString();
                    Response.Redirect("Default.aspx");
                }
            }
            catch (Exception ex)
            {
                lblW.Text = ex.Message;
            }
        }

    Plies - See Nann Nigga

    Scope Piskopos - Ben 46 Raporlu Bir Deliyim

    Ben başarısız olmadım, sadece işin bu şekilde yapılmayacağının bir çok yolunu buldum ve işin nasıl yapılacağına da bir çok defa yaklaştım.


    9 Kasım 2012 Cuma 15:35
  • tm olrak sorunu yazsana session almısısın bir sıkıntı gozukmuyor...
    9 Kasım 2012 Cuma 17:27
  •  tam olarak sorunu bir daha soylermsisin...
    9 Kasım 2012 Cuma 17:29
  • Gürsel Bey else içerisinde

    Session["Logged"] = tbUN.Text;

    ile bir logged session'u oluşturmuş oluyorsunuz.


    burhansuleymanvural@windowslive.com

    10 Kasım 2012 Cumartesi 07:11
  • session oluşturmada sıkıntı yok ancak almada bir sıkıntı var...ben cpanel.master içerisine girdiğimde orada şu kodları denedim ancak almayı beceremedim ve doğal olarak giriş yapanın ismi de gözükmüyor...

    cpanel.master.cs

    protected void Page_Load(object sender, EventArgs e)
        {
            GetYear();
    
            //conn = new SqlConnection(connStr);
    
            //try
            //{
            //    if (Session["Logged"] != null)
            //    {
            //        conn.Open();
            //        SqlCommand cmd = new SqlCommand("select count(*) from Admin where KullaniciAdi='" + libLogout.Text + "'", conn);
            //        int temp = Convert.ToInt16(cmd.ExecuteScalar());
            //        libLogout.Text = Session["Logged"].ToString();
            //    }
            //}
            //catch (Exception ex)
            //{
            //    Response.Write(ex.Message);
            //}
            //finally
            //{
            //    conn.Close();
            //}
        }


    Plies - See Nann Nigga

    Scope Piskopos - Ben 46 Raporlu Bir Deliyim

    Ben başarısız olmadım, sadece işin bu şekilde yapılmayacağının bir çok yolunu buldum ve işin nasıl yapılacağına da bir çok defa yaklaştım.



    10 Kasım 2012 Cumartesi 08:41
  • master page içerisinde de,

    Session["Logged"] değerini veri tabanın da arattırıp veritabanından elde edeceğin bilgileri kullanabilirsin.


    burhansuleymanvural@windowslive.com


    10 Kasım 2012 Cumartesi 12:21
  • işte nasıl? onu bilseydim zaten yazardım emin olun ;) :))

    Plies - See Nann Nigga

    Scope Piskopos - Ben 46 Raporlu Bir Deliyim

    Ben başarısız olmadım, sadece işin bu şekilde yapılmayacağının bir çok yolunu buldum ve işin nasıl yapılacağına da bir çok defa yaklaştım.

    10 Kasım 2012 Cumartesi 12:25
  • string deger=Session["Logged"].ToString();

    where KullaniciAdi='deger'


    burhansuleymanvural@windowslive.com

    10 Kasım 2012 Cumartesi 13:48
  • sizin yazdığınız şeyi denemiştim daha önce olmamıştı şimdi tekrar denedim yine olmadı isterseniz kodları paylaşayım;

     protected void Page_Load(object sender, EventArgs e)
        {
            GetYear();
    
            conn = new SqlConnection(connStr);
    
            try
            {
                if (Session["Logged"] != null)
                {
                    conn.Open();
                    loginName = Session["Logged"].ToString();
                    SqlCommand cmd = new SqlCommand("select * from Admin where KullaniciAdi='" + loginName + "'", conn);
                    int temp = Convert.ToInt16(cmd.ExecuteScalar());
                    libLogout.Text = loginName;
                }
            }
            catch (Exception ex)
            {
                Response.Write(ex.Message);
            }
            finally
            {
                conn.Close();
            }
        }


    Plies - See Nann Nigga

    Scope Piskopos - Ben 46 Raporlu Bir Deliyim

    Ben başarısız olmadım, sadece işin bu şekilde yapılmayacağının bir çok yolunu buldum ve işin nasıl yapılacağına da bir çok defa yaklaştım.

    10 Kasım 2012 Cumartesi 14:13
  • o sayfaya bir buton yerleştirip 
    Session["Logged"]'i mesaj olarak görüntülermisiniz.

    burhansuleymanvural@windowslive.com

    10 Kasım 2012 Cumartesi 14:21
  • zaten link button ın text özelliğine yazdırmaya çalışıyorum basıldığında logout yapacak...

    Plies - See Nann Nigga

    Scope Piskopos - Ben 46 Raporlu Bir Deliyim

    Ben başarısız olmadım, sadece işin bu şekilde yapılmayacağının bir çok yolunu buldum ve işin nasıl yapılacağına da bir çok defa yaklaştım.

    10 Kasım 2012 Cumartesi 14:39
  • msn'ye gelebilirmisiniz.

    burhansuleymanvural@windowslive.com

    10 Kasım 2012 Cumartesi 14:55
  • Merhabalar;

    Bildiğiniz üzere paylaşımların forum üzerinde kalmasını tercih ediyoruz. Mümkünse problem çözümünde bir aşama kayıt edebildiniz mi ya da ne durumdasınız bizlerle paylaşabilir misiniz ?

    Anlayışınız için şimdiden teşekkürler.


    Microsoft bu servisi kullanıcılarına yardım etme, Microsoft ürünleri ve teknolojileriyle ilgili bilgi bankasını genişletme amacıyla ücretsiz sunmaktadır.
    Bu içerik olduğu gibi benim tarafımdan hazırlanmış olup Microsoft tarafından herhangi bir sorumluluk üstlenildiği anlamına gelmez.
    Facebook Üzerinden Takip Et!
    Twitter'da Takip Et!

    12 Kasım 2012 Pazartesi 08:01
  • tabi ki paylaşırım, buradaki konuyu havada bırakmam emin olun ;) çözüme ulaşmayınca konular havada kalır ancak...neyse...

    şimdi login sistemini değiştirdim sorun çözüldü...

    gönderen:

    void Login()
        {
            string connStr = ConfigurationManager.ConnectionStrings["CS"].ConnectionString;
            SqlConnection conn = new SqlConnection(connStr);
            string query = "select * from Admin where KullaniciAdi=@KullaniciAdi and Parola=@Parola";
            SqlCommand cmd = new SqlCommand(query, conn);
            cmd.Parameters.Add("@KullaniciAdi", SqlDbType.NVarChar, 20);
            cmd.Parameters["@KullaniciAdi"].Value = tbUN.Text;
            cmd.Parameters.Add("@Parola", SqlDbType.NChar, 8);
            cmd.Parameters["@Parola"].Value = tbPass.Text;
            conn.Open();
            SqlDataReader sdr = cmd.ExecuteReader();
            if (sdr.Read())
            {
                Session["Logged"] = Convert.ToInt32(sdr["aID"]);
                Response.Redirect("Default.aspx");
            }
            else
            {
                lblW.Text = "Kullanıcı adı veya şifre yanlış";
            }
        }

    alan:

    if (Session["Logged"] != null)
            {
                string connStr = ConfigurationManager.ConnectionStrings["CS"].ConnectionString;
                SqlConnection conn = new SqlConnection(connStr);
                string query = "select * from Admin where aID=@aID";
                SqlCommand cmd = new SqlCommand(query, conn);
                cmd.Parameters.Add("@aID", SqlDbType.Int);
                cmd.Parameters["@aID"].Value = Session["Logged"];
                conn.Open();
                SqlDataReader sdr = cmd.ExecuteReader();
                while (sdr.Read())
                {
                    libLogin.Text = sdr["KullaniciAdi"].ToString();
                }
            }
            else
            {
                Response.Redirect("Login.aspx");
            }


    Plies - See Nann Nigga

    Scope Piskopos - Ben 46 Raporlu Bir Deliyim

    Ben başarısız olmadım, sadece işin bu şekilde yapılmayacağının bir çok yolunu buldum ve işin nasıl yapılacağına da bir çok defa yaklaştım.

    12 Kasım 2012 Pazartesi 12:24
  • Merhaba Gürsel Bey,

    Çözümü bizlerle de paylaştığınız içi teşekkürlerimizi sunarız.

    İyi çalışmalar.


    Microsoft bu servisi kullanıcılarına yardım etme, Microsoft ürünleri ve teknolojileriyle ilgili bilgi bankasını genişletme amacıyla ücretsiz sunmaktadır.
    Bu içerik olduğu gibi benim tarafımdan hazırlanmış olup Microsoft tarafından herhangi bir sorumluluk üstlenildiği anlamına gelmez.
    Facebook Üzerinden Takip Et!
    Twitter'da Takip Et!

    12 Kasım 2012 Pazartesi 12:31
  • rica ederim, ben de bu konuda sonuna kadar ilgilenen ve her türlü destek veren arkadaşlara sonsuz teşekkürleri...

    Plies - See Nann Nigga

    Scope Piskopos - Ben 46 Raporlu Bir Deliyim

    Ben başarısız olmadım, sadece işin bu şekilde yapılmayacağının bir çok yolunu buldum ve işin nasıl yapılacağına da bir çok defa yaklaştım.

    13 Kasım 2012 Salı 08:49