C# Giriş Paneli Uygulaması

Ceys

Yaşayan Forum Efsanesi
2 Nis 2016
7,658
4,965
Orhun Nehri

İyi günler,

Bu makalemizde C# form application üzerinde gerçekleştireceğimiz projeler için kullanıcı giriş paneli yapmayı tanıtacağız. Giriş panelinde güvenlik sorgusu oluşturma ve kullanmanın da yolu izah edilecektir. Kullanımı ve kodlaması oldukça kolaydır. Adımlara dikkat etmenizi temenni ederiz.

Kullanılacak Control / Değişken:

  • Button (button1, button2)
  • TextBox (textBox1, textBox2, textBox3)
  • Label (label1, label2, label3, label4)
  • PictureBox (pictureBox1 – Görselleştirmeye yönelik.)
Tavsiyeler:

  • Parolanın yazılacağı textBox ‘ın properties menüsünden UseSystemPasswordChar property (özelliğini) true yaparak şifrelerin noktalanmasını sağlayabilirsiniz.

  • Kullanıcı adı ve parolanın kontrol edildiği if koşuluna veritabanından çekeceğiniz bilgileri verebilirsiniz. Bu durum programın gelişmiş özellikleri açısından imkan sağlayacaktır.

Kodlama:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace WindowsFormsApplication2
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

private voıd Form1_Load(object sender, EventArgs e)
{
guvenlikTanimla();
label4.Text = "= " + guvenlik1 + " + " + guvenlik2;
}

int guvenlik1 = 0, guvenlik2 = 0, guvenlikToplam = 0;
voıd guvenlikTanimla()
{
Random rnd = new Random();
guvenlik1 = rnd.Next(0,10);
guvenlik2 = rnd.Next(0,10);
guvenlikToplam = guvenlik1 + guvenlik2;
}

private voıd button1_Click(object sender, EventArgs e)
{
if (guvenlikToplam.ToString()==textBox3.Text)
{
if (textBox1.Text == "demo" && textBox2.Text == "12345")
{
MessageBox.Show("Giriş işlemi başarılı.");
}
else
{
MessageBox.Show("Kullanıcı adı veya parola hatalı.");
}
}
else
{
MessageBox.Show("Güvenlik sorgusu hatalı.");
}
}

private voıd button2_Click(object sender, EventArgs e)
{
this.Close();
}
}
}

mysql bağlantılı nasıl yaparız bunu ?

Projemize Add Reference diyerek .NET sekmesine giriyoruz ve MySql.Data referansını bulup ekliyoruz.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using MySql.Data; //gerekli sql bağlantı kodu
using MySql.Data.MySqlClient;//gerekli sql bağlantı kodu

namespace mysql_ornek
{
public partial class Form1 : Form
{
public MySqlConnection mysqlbaglan= new MySqlConnection("Server=localhost;Database=blog;Uid=root;Pwd='';Encrypt=false;AllowUserVariables=True;UseCompression=True;chartset=utf8");// charset ekleyerek Türkçe karakter sorununuda gidermiş olduk.

public Form1()
{
InitializeComponent();
}

/*gerekli kullanım kodu
private voıd Form1_Load(object sender, EventArgs e)
{
try
{
mysqlbaglan.Open(); //oluşturtuğumuz tanımı çalıştırarak açılmasını sağlıyoruz
if (mysqlbaglan.State != ConnectionState.Closed) // tanımın durumunu kontrol ediyoruz bağlı mı değil mi
{
MessageBox.Show("Bağlantı Başarılı Bir Şekilde Gerçekleşti"); // bağlı ise buradaki işlemler gerçekleşiyor
}
else
{
MessageBox.Show("Maalesef Bağlantı Yapılamadı...!"); // bağlı değilse buradaki işlemler gerçekleşiyor
}
}
catch (Exception err)
{
MessageBox.Show("Hata! " + err.Message, "Hata Oluştu", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
*/gerekli kullanım kodu sonu
}
}

Tabi mysql de gerekli tabloları oluşturup içine veri eklemen gerek
 
Son düzenleme:

bekodark123

Uzman üye
31 Ocak 2012
1,402
0
Sistemde MySQL ile çalışıldığını gördüm.

Tamam iyi bir optimizasyon sağlanabilir belki fakat Windows sunucularda gerçekten çok sorun çıkardığını hem gördüm hem de bizzat tecrube edindim.

Hatta örnek bir hata söyliyim size;
MySQL servisi kendi kendine sunucu da servisi bulamayıp kapattığını gördüm ve yarım saatte 1 sunucuyu yeniden başlatmak zorunda kalınıyordu.

.NET ile çalışıcaksanız MSSQL kullanmak tercihiniz olmalı.
Tabii ki ihtiyaca göre optimizasyonlarla uğraşarak sorunları aşabilirsiniz ama benden nacizane bir öneri.
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.