private void btnKayitOl_Click(object sender, EventArgs e) { // Textboxlardan veriler alınıp müşteri nesnesinin nitelikleri doldurulacak oluşan nesne veri tabanına kaydedilecek this.ActiveControl = checkBoxKosullar; Musteri musteri = new Musteri(); if (txtSifre.Text.Equals(txtSifreTekrar.Text)) { if (!kullaniciAdiBosMu && !isimBosMu && !soyisimBosMu && !ePostaBosMu && !sifreBosMu && !sifreTekrarBosMu && !telefonNoBosMu && checkBoxKosullar.Checked) { //Bu şart gerçekleşirse bütün textboxlar doldurulmuştur ve kayıt için değerlendirmeye alınabilir. musteri.hataKodlari = "?"; musteri.KullaniciAdi = txtKullaniciAdi.Text; musteri.Isim = txtIsim.Text; musteri.Soyisim = txtSoyisim.Text; musteri.EPosta = txtEposta.Text; musteri.Sifre = txtSifre.Text; musteri.TelefonNo = txtTelefonNo.Text; } if (checkBoxKosullar.Checked == false) { // checkbox işaretlenmediyse kk6_ hata kodunu hata kodlarına ekler böylece formda uyarı sembolleri hangi textboxun yanında çıkacak belli ediliyor.. musteri.hataKodlari += "kk6_"; } if (!musteri.hataKodlari.Equals("?")) { // Buradaki şart bloğumuz, hata kodumuz "?" değilse yani hatamız varsa bir hata mesajı yazmak içindir. string hataMesaji = "Kayıt işlemi gerçekleştiremedi :\n"; if (musteri.hataKodlari.Contains("ep3")) { hataMesaji += "●Geçersiz e-posta adresi\n"; } if (musteri.hataKodlari.Contains("s4")) { hataMesaji += "●Güvenliksiz şifre\n" + "Şifreniz : büyük/küçük harf rakam ve özel sembollerden en az üçünü birlikte içermeli ve min 6 karakterden oluşmalı. \n(Örn: Password_123) \n"; } if (musteri.hataKodlari.Contains("t5")) { hataMesaji += "●Geçersiz telefon numarası\n"; } if (musteri.hataKodlari.Contains("kk6")) { hataMesaji += "●Kullanım koşulları kabul edilmedi\n"; } MessageBox.Show(hataMesaji, "Kayıt Yapılamadı", MessageBoxButtons.OK, MessageBoxIcon.Error); } if (musteri.KayitKontrol() && checkBoxKosullar.Checked) { // Veritabanında kullanıcı adı kontrolü yapılıp kayıt işlemleri gerçekleştirilecek SqlDatabase database = new SqlDatabase(); string BKD = "Collate SQL_Latin1_General_CP1254_CS_AS"; //Büyük-küçük harf duyarlılığını sağlayan SQL kodu. string commandStr = $"SELECT COUNT(Kullanici_adi) as kontrol FROM Kullanicilar WHERE Kullanici_adi {BKD} = '{musteri.KullaniciAdi}'"; SqlDataReader reader = database.Reader(commandStr); while (reader.Read()) { if (Convert.ToByte(reader[0]) == 1) { // Kullanıcı adı daha önceden sisteme kayıt olmuştur. Müşteri başka bir kullanıcı adı bulmalıdır. MessageBox.Show("Kullanıcı adı başkası tarafından kullanılıyor. Lütfen başka bir kullanıcı adı deneyiniz.", "Kayıt yapılamadı", MessageBoxButtons.OK, MessageBoxIcon.Information); pnlKullaniciAdi.Visible = true; txtKullaniciAdi.Text = "Kullanıcı Adı"; } else { // Kayıt işlemleri gerçekleşebilir. try { string queryStr = $"INSERT INTO Kullanicilar (Kullanici_adi,Isim,Soyisim,E_posta,Sifre,Telefon_no) VALUES ('{txtKullaniciAdi.Text}','{txtIsim.Text}','{txtSoyisim.Text}','{txtEposta.Text}','{txtSifre.Text}','{txtTelefonNo.Text}')"; database.Add_Update_Delete(queryStr); // Ekle metoduna komudumuz göderildi. DialogResult result = MessageBox.Show("KAYIT İŞLEMİNİZ GERÇEKLEŞMİŞTİR", "Kayıt tamamlandı", MessageBoxButtons.OK, MessageBoxIcon.Information); if (result == DialogResult.OK) { btnBack_Click(sender, e); } } catch (Exception exception) { MessageBox.Show(exception.Message.ToString(), "Kayıt gerçekleştirilemedi", MessageBoxButtons.OK, MessageBoxIcon.Error); } } } database.Disconnect(); } } else { // Şifreler uyuşmuyordur ve hata kodlarına s4_ kodunu ekler böylece formda uyarı sembolleri hangi textboxun yanında çıkacak belli ediliyor. musteri.hataKodlari += "s4_"; MessageBox.Show("Şifreler uyuşmuyor lütfen şifrelerinizi kontrol ediniz.", "Eşleşme Hatası", MessageBoxButtons.OK, MessageBoxIcon.Error); } // Aşağıdaki if blokları textboxların boş olması durumunda ya da hata kodunun eşleşmesi durumunda ilgili textbox un yanında uyarı işaretini aktifleştirir. if (kullaniciAdiBosMu || musteri.hataKodlari.Contains("ka0")) { pnlKullaniciAdi.Visible = true; } if (isimBosMu || musteri.hataKodlari.Contains("i1")) { pnlIsim.Visible = true; } if (soyisimBosMu || musteri.hataKodlari.Contains("s2")) { pnlSoyisim.Visible = true; } if (ePostaBosMu || musteri.hataKodlari.Contains("ep3")) { pnlEposta.Visible = true; } if (sifreBosMu || musteri.hataKodlari.Contains("s4")) { pnlSifre.Visible = true; } if (sifreTekrarBosMu || musteri.hataKodlari.Contains("s4")) { pnlSifreTekrar.Visible = true; } if (telefonNoBosMu || musteri.hataKodlari.Contains("t5")) { pnlTelefonNo.Visible = true; } }