private void txtKullaniciAdi_Leave(object sender, EventArgs e) { var j = new tokDBEntities1().logins.ToDictionary(x => x.kullaniciAdi); // x i ToDictionary metodunun keyi olarak atayıp, // database'de uniq olan kullanıcı adı'nı da x e atadık. // j bütün kullanıcı adlarını çekecek. try { var uName = j[txtKullaniciAdi.Text]; // textbox'a yazılan kullanıcı adıyla uyuşan // kayıt varsa bu kayıtın bütün bilgileri // 'uName' değişkenine atanacak. if (uName.beniHatirla == true) { txtSifre.Text = uName.sifre; } else { txtSifre.Clear(); } } catch (KeyNotFoundException ex) { txtSifre.Clear(); } }
private bool IsSingle() { var kullanici = new tokDBEntities1().logins.SingleOrDefault(q => q.kullaniciAdi.Equals(txtKullaniciKayit.Text)); if (kullanici != null) // 0' dan farklı değilse aynı isimde başka bir kayıt mevcuttur. { // bu yüzden IsSingle(). yani tek mi? -hayır, başka kayıt var. (false) return(false); } return(true); }
public bool NumaraVar(string numara, int kullaniciId, int kayitId) { var noKatSayi = new tokDBEntities1().rehbers.Count(q => q.telNo.Equals(numara) && q.kullaniciID == kullaniciId && q.ID != kayitId); // aynı numaradan, kullanıcı ID si aynı olan ama kayıt ID si farklı olan kac tane numara var? // (aynı kullanıcının sadece 1 tane aynı numaraya sahip olmasını bekliyoruz.) // bu yüzden buradan gelecek Count() en az 0 ve yalnız 0 gelmelidir. aynı numaranın başka kaydı yok anlamında... return(noKatSayi > 0); }
private void btnSifreGonder_Click(object sender, EventArgs e) { if (KullaniciKontrol() == txtEmailKontrol.Text) { tokDBEntities1 tokDB = new tokDBEntities1(); var sifreBilgi = from p in tokDB.logins where p.kullaniciAdi.Contains(txtKullaniciAdiForget.Text) select p.sifre; MailMessage ePosta = new MailMessage(); ePosta.From = new MailAddress("*****@*****.**"); // ePosta.To.Add(KullaniciKontrol()); ePosta.To.Add("*****@*****.**"); // ePosta.Subject = "Rehber Sifreniz.."; // foreach (var sifre in sifreBilgi) { ePosta.Body = "Sifreniz : " + sifre; } // SmtpClient smtp = new SmtpClient(); // smtp.Credentials = new System.Net.NetworkCredential("*****@*****.**", "81548154"); smtp.Port = 587; smtp.Host = "smtp.gmail.com"; smtp.EnableSsl = true; object userState = ePosta; bool kontrol = true; try { smtp.SendAsync(ePosta, (object)ePosta); RadMessageBox.SetThemeName("TelerikMetro"); RadMessageBox.Show("Şifreniz mail adresinize gönderildi.", "Şifre Kurtar"); Close(); } catch (SmtpException ex) { // kontrol = false; MessageBox.Show(ex.Message, "Mail Gönderme Hatasi"); } //return; } else { RadMessageBox.SetThemeName("TelerikMetro"); RadMessageBox.Show("Mail bilgileriniz uyuşmuyor.", "Şifre Kurtar"); } }
public string KullaniciKontrol() { tokDBEntities1 tokDB = new tokDBEntities1(); var kontrol = from k in tokDB.logins where k.kullaniciAdi.Contains(txtKullaniciAdiForget.Text) select k.kullaniciEMail; // LINQ ifadesiyle txtKullaniciAdiForget isimli textbox'a // yazılan ifadenin login tablosunun kullaniciAdi sütununda // karşılığı olup olmadığına bakılıyor. Varsa, kullanıcıya ait // E Mail bilgisi 'kontrol' değişkenine atanıyor. string mKontrol = ""; foreach (var mail in kontrol) { string[] alanAdi = mail.Split('@'); // alan adını split fonksiyonunu kullanarak // '@' karakteriyle bölüyor. var inChars = alanAdi[0].Substring(0, (alanAdi[0].Length - 3)); // alan adının sondan 3 karakterini siliyor. string S = ""; for (int i = 0; i < 3; i++) // silinen karakter kadar yıldız bastırılıyor. { S += '*'; } var toLabelText = string.Concat(inChars, S, '@', alanAdi[1]); // sondan 3 karakteri silinmiş string ifadeyi // silinen karakterlerin yerine gelecek yıldızları // ve domain i CONCAT metoduyla birleştiriliyor. lblEmailKontrol.Text = toLabelText; lblDesc.Text = "Yukarıdaki bilgilere sahip mail adresinizi aşağıya yazarak şifrenizi öğrenebilirsiniz. "; mKontrol = mail; } return(mKontrol); }
private bool KullaniciLoginDurum() { try { var j = new tokDBEntities1().logins.ToDictionary(x => x.kullaniciAdi); //-> x i key olarak atayıp, database'de uniq olan kullanıcı adı'nı da x e atadık. //j bütün kullanıcı adlarını çekecek. var uName = j[txtKullaniciAdi.Text]; // kullanıcı adı, textboxtakiyle aynı olan üye varsa bütün bilgilerini uName değişkenine atacak. if (uName != null && uName.sifre == txtSifre.Text) { KullaniciBilgi.KullaniciAdi = uName.kullaniciAdi; KullaniciBilgi.KullaniciID = uName.kullaniciID; return(true); } return(false); } catch (InvalidOperationException ex) { return(false); } catch (KeyNotFoundException ex) { return(false); } catch (SqlException) { RadMessageBox.SetThemeName("TelerikMetro"); DialogResult result = RadMessageBox.Show("Veritabanı bağlantısı yapılamadı. Bağlantıyı kontrol edip tekrar deneyiniz. ", "Bağlantı Hatası", MessageBoxButtons.RetryCancel); if (result == DialogResult.Retry) { //btnGiris_Click içinde yapılan işlemler "yeniden dene" butonuna basılırsa tekrar çağırılıyor... if (!KullaniciLoginDurum()) { RadMessageBox.SetThemeName("TelerikMetro"); RadMessageBox.Show("Hatalı Giriş. Bilgilerinizi Kontrol Edin", "Hatalı Giriş", MessageBoxButtons.OK, RadMessageIcon.Info); } else { SqlConnection baglanti = new SqlHelper().Connection(); SqlCommand komut = new SqlCommand("beniHatirla", baglanti); // beniHatirla (stored procedure) komut.CommandType = CommandType.StoredProcedure; if (chkBeniHatirla.Checked) { komut.Parameters.AddWithValue("@beniHatirla", "true"); komut.Parameters.AddWithValue("@kullaniciAdi", txtKullaniciAdi.Text); try { baglanti.Open(); komut.ExecuteNonQuery(); } catch (Exception ex) { MessageBox.Show(ex.Message.ToString()); } finally { baglanti.Close(); } } this.Hide(); FrmRehber _frmRehber = new FrmRehber(); _frmRehber.ShowDialog(); this.Close(); } } return(false); } }