Çözüldü C# ile kullanıcı yetkilendirme nasıl yapılır?

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.

dogckr

Decapat
Katılım
29 Haziran 2021
Mesajlar
131
Çözümler
2
Daha fazla  
Cinsiyet
Erkek
C#:
 SqlCommand yetki = new SqlCommand("select * from musteri", connection);
           
            string sorgu = "SELECT * FROM musteri where mail=@user AND sifre=@pass";
           
            cmd = new SqlCommand(sorgu, connection);
            cmd.Parameters.AddWithValue("@user", TextBox1.Text);
            cmd.Parameters.AddWithValue("@pass", TextBox2.Text);
            connection.Open();
            dr = cmd.ExecuteReader();
            if (dr.Read())
            {
                dr.Close();
               
                dr = yetki.ExecuteReader();

                if (dr[5].ToString() == 1)
                {
                    Response.Redirect("anasayfa.aspx");
                }
                else
                {
                    Response.Redirect("master.master");
                }
               
            }
            else
            {
                Label1.Text = "Giriş Başarısız ";
            }
            connection.Close();


Veri tabanında yetki diye kolonunun değeri 1 .
Her normal kullanıcı 1 olarak değer alıyor. Ben 0 değerini alan kişinin başka bir sayfaya girmesini istiyorum, nasıl yapabilirim?
 

Dosya Ekleri

  • Ekran görüntüsü 2022-05-28 133820.png
    Ekran görüntüsü 2022-05-28 133820.png
    1,5 KB · Görüntüleme: 77
Son düzenleyen: Moderatör:
Çözüm
C#:
 string sorgu = "SELECT * FROM musteri where mail=@user AND sifre=@pass";

            cmd = new SqlCommand(sorgu, connection);
            cmd.Parameters.AddWithValue("@user", TextBox1.Text);
            cmd.Parameters.AddWithValue("@pass", TextBox2.Text);

            connection.Open();
            dr = cmd.ExecuteReader();

            if (dr.Read())
            {
                if (dr[5].ToString()=="False")
                {
                    Response.Redirect("admin.aspx");
                }
                else if (dr[5].ToString() == "True")
                {
                    Response.Redirect("anasayfa.aspx");
                }
                else
                {
                    Label1.Text = "Giriş Başarısız ";

                }

            }
            else
            {
                Label1.Text = "Giriş Başarısız ";
            }
            connection.Close();



Son hali bu. Çalıştı teşekkür ederim.
Kodunuzda anormallik yok gibi sadece bir if daha lazım yanlış görmüyorsam şöyle olacak

if (dr[5].ToString() == 1)
{
Response.Redirect("anasayfa.aspx");
}
else if(dr[5].ToString() == 0)
{
Response.Redirect("yonetim/anasayfa.aspx");
}

else
{
Response.Redirect("master.master");
}
 
Kodunuzda anormallik yok gibi sadece bir if daha lazım yanlış görmüyorsam şöyle olacak

if (dr[5].ToString() == 1)
{
Response.Redirect("anasayfa.aspx");
}
else if(dr[5].ToString() == 0)
{
Response.Redirect("yonetim/anasayfa.aspx");
}

else
{
Response.Redirect("master.master");
}
mail ve parolayı da kontrol etmem gerek
mail ve parolayı da kontrol etmem gerek
C++:
 if (dr.Read() && dr[5].ToString() == 0.ToString() )
            {   
                Response.Redirect("admin.aspx");

            }
            else if(dr.Read() && dr[5].ToString() == 1.ToString())
            {
                Response.Redirect("anasayfa.aspx");
                
            }
            else
            {
                Label1.Text = "Giriş Başarısız ";
            }
bunu denedim ama olmadı büyük ihtimal data readar cmd.execute olduğundan ama nasıl yaparım bilmiyorum.
 
0.ToSting() - 1.ToString() yazım yanlışın var bu şekilde yapmamalısın, değişken isimlerini düzgün şekilde yapmalısın. if kısmını ayırmalısın. Bu şekilde kodun tamamını benim yazmamız gerekir...

if (dr.Read()) {

}
 
0.ToSting() - 1.ToString() yazım yanlışın var bu şekilde yapmamalısın, değişken isimlerini düzgün şekilde yapmalısın. if kısmını ayırmalısın. Bu şekilde kodun tamamını benim yazmamız gerekir...

if (dr.Read()) {

}
onlar bu hatayı almamak için yaptım .
 

Dosya Ekleri

  • Adsıza.png
    Adsıza.png
    25,1 KB · Görüntüleme: 36
C#:
 string sorgu = "SELECT * FROM musteri where mail=@user AND sifre=@pass";

            cmd = new SqlCommand(sorgu, connection);
            cmd.Parameters.AddWithValue("@user", TextBox1.Text);
            cmd.Parameters.AddWithValue("@pass", TextBox2.Text);

            connection.Open();
            dr = cmd.ExecuteReader();

            if (dr.Read())
            {
                if (dr[5].ToString()=="False")
                {
                    Response.Redirect("admin.aspx");
                }
                else if (dr[5].ToString() == "True")
                {
                    Response.Redirect("anasayfa.aspx");
                }
                else
                {
                    Label1.Text = "Giriş Başarısız ";

                }

            }
            else
            {
                Label1.Text = "Giriş Başarısız ";
            }
            connection.Close();



Son hali bu. Çalıştı teşekkür ederim.
 
Çözüm

Yeni konular

Geri
Yukarı