c# İle Sosyal Medya Yapın -Şifremi Unuttum- #ders4

6 dk okuma süresi
5,299

Merhaba Arkadaşlar. Bu dersimizde yaptığımız projeye devam edeceğiz.

Bu dersimizde using System.IO ve using System.Net.Mail sınıflarını kullanacağız.

Ben gmail hesabım üzerinden şifre gönderecem. bunu yapmanız için ilk önce aşağıdaki linke tıklayarak gmailinize robot kullanıcılardan giriş yapma izni vermeniz gerek. yoksa ssl hatası alırsınız. Burası öenmli bir nokta arkadaşlar. Atlamamak gerek.

Bu dersimizde yapacaklaırımız :

  • #Şifremi unuttum için bir form
  • #Veri tabanına kayıtlı mail hesabına aktivasyon kodu gönderme
  • #gönderilen kod ile textbox’a girilen kodu eşleştirme
  • #boş değerler girildiğinde verilecek tepki

Kodlarımıza başlamadan Önce diğer derslerimizn linkini de sizlerle paylaşalım

Ders 1

Ders 2

Ders 3

Kütüphane Bölümü :


using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using MySql.Data.MySqlClient;
using MySql.Data;
using System.IO;
using System.Net.Mail;

şifremi unuttum için ben link label kullandım. siz ne kullanmak isterseniz aşağıdaki kodları onun click bölümüne yazarsınız.


if (gAdi.Text!="" && gAdi.Text!="Kullanıcı Adı")
{
MySqlDataAdapter baglan = new MySqlDataAdapter("select * from users where uName = '" + gAdi.Text + "'", con);
con.Open();
DataSet dt = new DataSet();
baglan.Fill(dt, "users");
dataGridView1.DataSource = dt.Tables["users"];
try
{
Random rnd = new Random();
string mail = dataGridView1[2, 0].Value.ToString();
int x = rnd.Next(1000000,9999999);
SmtpClient sc = new SmtpClient();
sc.Port = 587;
sc.Host = "smtp.gmail.com";
sc.EnableSsl = true;
sc.Credentials = new System.Net.NetworkCredential("gmail kısmı", "şifre kısmı");
MailMessage mesaj = new MailMessage("furkan.ishacker@gmail.com", mail);
mesaj.Subject = "Şifremi Unutuum";
mesaj.Body = @"Şifrenizi sıfırlayabilmek için kodunuzu programa giriniz!
Aktivasyon kodunuz : "+x+"iyi eğlenceler";
sc.Send(mesaj);
Sifre ad = new Sifre();
ad.email = mail;
ad.x = x;
ad.Show();
}
catch (Exception ex)
{

MessageBox.Show("Böyle bir kullanıcı bulunumadı"+ ex.Message);
con.Close();
}

}
else
{
MessageBox.Show("Kullanıcı adı boş geçilemezz!");
}

daha sonra yeni açtığımız şifremi unuttum sayfasında da aktivasyon kodunu karşılaştırma yapalım. ve bir sonraki dersimizde de yeni şifre belirleyelim.

ana formdakş tüm kodlarıda burda sizinle paylaşalım.


using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using MySql.Data.MySqlClient;
using MySql.Data;
using System.IO;
using System.Net.Mail;
namespace WindowsFormsApplication2
{

public partial class Form1 : MetroFramework.Forms.MetroForm
{
MySqlConnection con;
public Form1()
{
InitializeComponent();

try
{
con = new MySqlConnection(MySql.bcumlesi);

}
catch (Exception)
{

MessageBox.Show("bağlantı tapılamadı");
}

}



private void button1_Click(object sender, EventArgs e)
{
}

private void Form1_Load(object sender, EventArgs e)
{

}

private void label1_Click(object sender, EventArgs e)
{

}

private void metroButton1_Click(object sender, EventArgs e)
{
MySqlDataAdapter baglan = new MySqlDataAdapter("select * from users where uName = '" + gAdi.Text + "'", con);
con.Open();
DataSet dt = new DataSet();
baglan.Fill(dt,"users");
dataGridView1.DataSource = dt.Tables["users"];
if (dataGridView1.RowCount<2)
{
MessageBox.Show("Böyle Bir Kullanıcı Yok");
}
else
{
string pass = dataGridView1[1, 0].Value.ToString();
if (pass==gSifre.Text)
{
MessageBox.Show("girş başarılı");
}
else
{
MessageBox.Show("giriş başarısız!!");
}
}
con.Close();
}

private void metroButton2_Click(object sender, EventArgs e)
{
if (txtAdi.Text!=""&&txtsifre.Text!=""&&txtmail.Text!="")
{
MySqlDataAdapter baglan = new MySqlDataAdapter("select * from users where uName = '" + txtAdi.Text + "'", con);
con.Open();
DataSet dt = new DataSet();
baglan.Fill(dt, "users");
dataGridView1.DataSource = dt.Tables["users"];
if (dataGridView1.RowCount ==2)
{
MessageBox.Show("Böyle bir kullanıcı bulundu","Hata");
}
else
{
try
{
MySqlCommand com = new MySqlCommand("insert into users(uName,uPass,UMail) values ('" + txtAdi.Text + "','" + txtsifre.Text + "','" + txtmail.Text + "')", con);
com.ExecuteNonQuery();
MessageBox.Show("Kayıt Başarılı!");
}
catch
{
MessageBox.Show("Kayıt Başarısız!");
}

}
}
}

private void Unuttum_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
if (gAdi.Text!="" && gAdi.Text!="Kullanıcı Adı")
{
MySqlDataAdapter baglan = new MySqlDataAdapter("select * from users where uName = '" + gAdi.Text + "'", con);
con.Open();
DataSet dt = new DataSet();
baglan.Fill(dt, "users");
dataGridView1.DataSource = dt.Tables["users"];
try
{
Random rnd = new Random();
string mail = dataGridView1[2, 0].Value.ToString();
int x = rnd.Next(1000000,9999999);
SmtpClient sc = new SmtpClient();
sc.Port = 587;
sc.Host = "smtp.gmail.com";
sc.EnableSsl = true;
sc.Credentials = new System.Net.NetworkCredential("furkan.ishacker@gmail.com", "şifre buraya");
MailMessage mesaj = new MailMessage("furkan.ishacker@gmail.com", mail);
mesaj.Subject = "Şifremi Unutuum";
mesaj.Body = @"Şifrenizi sıfırlayabilmek için kodunuzu programa giriniz!
Aktivasyon kodunuz : "+x+"iyi eğlenceler";
sc.Send(mesaj);
Sifre ad = new Sifre();
ad.email = mail;
ad.x = x;
ad.Show();
}
catch (Exception ex)
{

MessageBox.Show("Böyle bir kullanıcı bulunumadı"+ ex.Message);
con.Close();
}

}
else
{
MessageBox.Show("Kullanıcı adı boş geçilemezz!");
}
}
}
}

Bu dersimizde bu kadar. Diğer dersimizde görüşmek üzere..

 

Daha Fazla İlgili Makale Yükleyin
Daha Fazla Yük c#

Bir yorum

  1. […] önceden yapmış olduğumuz ipucukutusuna alttaki kodları yapıştıralım Ders 4 […]

    cevap

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Ayrıca Kontrol Edin

FastReport Kullanımı ve Örnek Tasarım

Herkese merhaba. Uzun bir aradan sonra yazılım ile ilgili makale yazmaya tekrar başladık. …