Sinema Rezervasyon Programı — C#

Sinema Rezervasyon Programı — C#

Giriş Formu

[code lang=”csharp”]

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;//www.gorselprogramlama.com

using System.Text;

using System.Windows.Forms;

using System.Data.OleDb;

namespace Sinema_Rezervasyon_Otomasyonu

{

public partial class frmGenel : Form

{

public frmGenel()

{

InitializeComponent();

}

OleDbConnection connect = new OleDbConnection("Provider=Microsoft.Ace.Oledb.12.0;Data Source=sinema.accdb");

void baglantiKur()

{

if (connect.State == ConnectionState.Closed)

{

connect.Open();

}

}//www.gorselprogramlama.com

private void btnRezerve_Click(object sender, EventArgs e)

{

if (cbSalon.SelectedIndex != -1 && cbFilm.SelectedIndex != -1 && cbSeans.SelectedIndex != -1)

{

frmRezervasyon rezerve = new frmRezervasyon();

rezerve.film_Adi = cbFilm.Text;

rezerve.salon_Adi = cbSalon.Text;

rezerve.seans = cbSeans.Text;

rezerve.Show();

this.Hide();

}

else

{

MessageBox.Show("Lütfen film bilgilerini eksiksiz doldurunuz.");

}

} //www.gorselprogramlama.com

void bilgiAl(string sql , ComboBox cmb)

{

cmb.Items.Clear();

baglantiKur();

OleDbCommand cmd = new OleDbCommand(sql, connect);

OleDbDataReader oku = cmd.ExecuteReader();

while (oku.Read())

{

cmb.Items.Add(oku[1].ToString());

}

connect.Close();

}

//www.gorselprogramlama.com

private void cbSalon_Click(object sender, EventArgs e)

{

bilgiAl("SELECT * FROM salon", cbSalon);

}

private void cbFilm_Click(object sender, EventArgs e)

{

bilgiAl("SELECT * FROM filmler", cbFilm);

}

private void btnFilmEkle_Click(object sender, EventArgs e)

{

frmFilmKayit frmK = new frmFilmKayit();

frmK.Show();

this.Hide();

}//www.gorselprogramlama.com

}

}

[/code]

Rezervasyon Formu

[code lang=”csharp”]

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;//www.gorselprogramlama.com

using System.Data.OleDb;

using System.Collections;

namespace Sinema_Rezervasyon_Otomasyonu

{

public partial class frmRezervasyon : Form

{

public frmRezervasyon()

{

InitializeComponent();

}

public string film_Adi = "";

public string salon_Adi = "";

public string seans = "";

ArrayList koltuklar = new ArrayList();

ArrayList iptalKoltuk = new ArrayList();

int filmID = 0;

int salonID = 0;

OleDbConnection connect = new OleDbConnection("Provider=Microsoft.Ace.Oledb.12.0;Data Source=sinema.accdb");

void baglantiKur()//www.gorselprogramlama.com

{

if (connect.State == ConnectionState.Closed)

{

connect.Open();

}

}

private void btnMenu_Click(object sender, EventArgs e)

{

frmGenel frmG = new frmGenel();

frmG.Show();

this.Hide();

}

private void btnKoltuk_Click(object sender, EventArgs e)

{

//if (((Button)sender).BackColor != Color.Red)

if (((Button)sender).BackColor == Color.Chartreuse) // yeşil

{

((Button)sender).BackColor = Color.Orange;

if (!koltuklar.Contains(((Button)sender).Text))

{

koltuklar.Add(((Button)sender).Text);

}

koltukYazdir();//www.gorselprogramlama.com

}

else if (((Button)sender).BackColor == Color.Orange) // turuncu

{

((Button)sender).BackColor = Color.Chartreuse;

if (koltuklar.Contains(((Button)sender).Text))

{

koltuklar.Remove(((Button)sender).Text);

}

koltukYazdir();

}

else // kırmızı

{

if (!iptalKoltuk.Contains(((Button)sender).Text))

{

iptalKoltuk.Add(((Button)sender).Text);

}

else //www.gorselprogramlama.com

{

iptalKoltuk.Remove(((Button)sender).Text);

}

string koltuk = "";

for (int i = 0; i < iptalKoltuk.Count; i++)

{

koltuk += iptalKoltuk[i].ToString() + ",";

}

if (iptalKoltuk.Count >= 1)

{

koltuk = koltuk.Remove(koltuk.Length – 1, 1);

}

txtKoltukIptal.Text = koltuk;

}

}

void koltukYazdir()

{

string koltuk = "";

for (int i = 0; i < koltuklar.Count; i++)

{

koltuk += koltuklar[i].ToString() + ",";//www.gorselprogramlama.com

}

if (koltuklar.Count >= 1)

{

koltuk = koltuk.Remove(koltuk.Length – 1, 1);

}

txtKoltukNo.Text = koltuk;

}

private void frmRezervasyon_Load(object sender, EventArgs e)

{

lblFilmAdi.Text = film_Adi;

lblSalonSeans.Text = salon_Adi + " / " + seans;

timer1.Enabled = true;

filmID = Convert.ToInt32(araGetir("SELECT * FROM filmler WHERE film_Adi=’" + film_Adi + "’"));

salonID = Convert.ToInt32(araGetir("SELECT * FROM salon WHERE salon_Adi=’" + salon_Adi + "’"));

LogAl();//www.gorselprogramlama.com

}

private void timer1_Tick(object sender, EventArgs e)

{

lblSaat.Text = DateTime.Now.ToLongTimeString();

lblTarih.Text = DateTime.Now.Date.ToShortDateString();

}

string araGetir(string sql)

{

baglantiKur();

OleDbCommand cmd = new OleDbCommand(sql, connect);

OleDbDataReader oku = cmd.ExecuteReader();

oku.Read();

string deger = oku[0].ToString();

connect.Close();//www.gorselprogramlama.com

return deger;

}

void biletAyir()

{

baglantiKur();

string ucret = "";

if (rbOgrenci.Checked) ucret = "6";

else ucret = "10";

for (int i = 0; i < koltuklar.Count; i++)

{

string sql = "INSERT INTO satis(film_ID,salon_ID,tarih,seans,satis_Adi,satis_Soyadi,koltuk_No,ucret) VALUES (" + filmID + "," + salonID + ",’" + lblTarih.Text + "’,’" + seans + "’,’" + txtAdi.Text + "’,’" + txtSoyadi.Text + "’," + Convert.ToInt32(koltuklar[i]) + ",’" + ucret + "’)";

OleDbCommand cmd = new OleDbCommand(sql, connect);

cmd.ExecuteNonQuery();

this.Controls.Find("btn" + koltuklar[i].ToString(), true)[0].BackColor = Color.Red;

}

connect.Close();//www.gorselprogramlama.com

}

private void btnBiletAyir_Click(object sender, EventArgs e)

{

if (txtKoltukNo.Text != "")

{

if (txtKoltukNo.Text != "" && txtAdi.Text != "" && txtSoyadi.Text != "")

{

biletAyir();

MessageBox.Show(txtAdi.Text + " " + txtSoyadi.Text + " bilgili kişinin " + txtKoltukNo.Text + " no’lu koltukları ayrılmıştır");

txtKoltukNo.Text = "";

txtAdi.Text = "";

txtSoyadi.Text = "";//www.gorselprogramlama.com

koltuklar.Clear();

}

else

{

MessageBox.Show("Tüm bilgileri eksiksiz doldurmalısınız.");

}

}

else

{

MessageBox.Show("Koltuk numarasını seçmediniz.","Dikkat");

}

}

void LogAl()

{

baglantiKur();

string sql = "SELECT * FROM satis WHERE film_ID=" + filmID + " AND salon_ID=" + salonID + " AND seans=’" + seans + "’";

OleDbCommand cmd = new OleDbCommand(sql, connect);

OleDbDataReader oku = cmd.ExecuteReader();

while (oku.Read())

{

string koltuk_No = oku[7].ToString();

this.Controls.Find("btn" + koltuk_No, true)[0].BackColor = Color.Red;

}

connect.Close();//www.gorselprogramlama.com

}

private void btnBilet_iptal_Click(object sender, EventArgs e)

{

if (txtKoltukIptal.Text != "")

{

baglantiKur();

for (int i = 0; i < iptalKoltuk.Count; i++)

{

string sql = "DELETE FROM satis WHERE koltuk_No=" + Convert.ToInt32(iptalKoltuk[i]);

OleDbCommand cmd = new OleDbCommand(sql, connect);

cmd.ExecuteNonQuery();

this.Controls.Find("btn" + iptalKoltuk[i].ToString(), true)[0].BackColor = Color.Chartreuse;

}

connect.Close();

iptalKoltuk.Clear();//www.gorselprogramlama.com

MessageBox.Show(txtKoltukNo.Text + " koltuk numaraları bileti iptal edilmiştir.");

txtKoltukIptal.Text = "";

txtAdi.Text = "";

txtSoyadi.Text = "";

}

else

{

MessageBox.Show("Koltuk numarasını seçmediniz.");

}

}

private void frmRezervasyon_FormClosing(object sender, FormClosingEventArgs e)

{

frmGenel frmG = new frmGenel();

frmG.Show();

}//www.gorselprogramlama.com

}

}

[/code]

Film Kayıt Formu

[code lang=”csharp”]

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;

using System.Data.OleDb;

namespace Sinema_Rezervasyon_Otomasyonu

{

public partial class frmFilmKayit : Form

{

public frmFilmKayit()

{

InitializeComponent();

}

OleDbConnection connect = new OleDbConnection("Provider=Microsoft.Ace.Oledb.12.0;Data Source=sinema.accdb");

void baglantiKur()

{

if (connect.State == ConnectionState.Closed)

{

connect.Open();

}

}

private void frmFilmKayit_FormClosing(object sender, FormClosingEventArgs e)

{

frmGenel frmG = new frmGenel();

frmG.Show();

}

private void btnEkle_Click(object sender, EventArgs e)

{

baglantiKur();

string sql = "INSERT INTO filmler(film_Adi,yonetmen,film_tur) VALUES(‘" + txtFilmAdi.Text + "’,’" + txtYonetmen.Text + "’,’" + txtTur.Text + "’)";

OleDbCommand cmd = new OleDbCommand(sql, connect);

cmd.ExecuteNonQuery();

connect.Close();

MessageBox.Show(txtFilmAdi.Text + " / " + txtYonetmen.Text + " / " +txtTur.Text + " filmi eklendi");

txtFilmAdi.Text = "";

txtTur.Text = "";

txtYonetmen.Text = "";

}

}

}

[/code]

Ümit Demirtaş

Projeyi İNDİR

Yorumlar 77

  • merhaba yeni film ekle diyorum System.InvalidOperationException: ‘Microsoft.Ace.Oledb.12.0’ sağlayıcısı yerel makine kayıtlı değil. hatası veriyo ne yapmam lazım

  • muhammet ahıska :
    Access versiyon sorunu olabilir.Eğer Access 2007 ,2010 veya 2013 kullanıyorsan access 2003 kurmalısın veya kodlarda jet yerine ace , 4.0 yerine 12.0 ve veri tabanı ismi data.accdb olmalı.Tabi veri tabanını 2007 veya 2010 veya 2013′te açıp 2007 ,2010 veya 2013 olarak kaydetmelisin.Veri tabanı bin–>debug klasöründe.

  • araGetir metodu ne ise yariyor. Orta hata veriyor benim :S

  • talha :
    Seçilen filme ve salona ait ID bilgilerini getiriyor.

  • OleDbConnection connect = new OleDbConnection(“Provider=Microsoft.Ace.Oledb.12.0;Data Source=sinema.accdb”);
    void baglantiKur()
    {
    if (connect.State == ConnectionState.Closed)
    {
    connect.Open();
    An unhandled exception of type ‘System.InvalidOperationException’ occurred in System.Data.dll

    Additional information: ‘Microsoft.Ace.Oledb.12.0’ sağlayıcısı yerel makine kayıtlı değil.

    bunun için ne yapmalıyım

  • muhammet ahıska :
    Access versiyon sorunu olabilir.Eğer Access 2007 ,2010 veya 2013 kullanıyorsan access 2003 kurmalısın veya kodlarda jet yerine ace , 4.0 yerine 12.0 ve veri tabanı ismi data.accdb olmalı.Tabi veri tabanını 2007 veya 2010 veya 2013′te açıp 2007 ,2010 veya 2013 olarak kaydetmelisin.Veri tabanı bin–>debug klasöründe.

  • Rezervasyon formunda neye göre rengi değiştiriyor hangi kod bloğu örneğin satmadan önce yeşilken seçili iken sarı satınca kırmızı olmasını neye göre yapıyoruz mousun tıklamasınamı yada başka bişeye göre mi ?

  • Murat:
    *** ilk olarak Yeşil.
    *** btnKoltuk_Click olayında ((Button)sender).BackColor = Color.Orange; komutu ile turuncu işlemi

    *** this.Controls.Find(“btn” + koltuklar[i].ToString(), true)[0].BackColor = Color.Red komutu ile de bilet ayır dedikten sonra kırmızı renk oluyor.
    Tabiki bunu sadece bu komutlar değil yanındaki diğer komutlarıda incelemen gerekir.

  • e-mail attım ancak dönüş yapmadınız tapu otomasyonu hakkında yardımcı olabilir misiniz?

  • serhat atalay :
    E mail cevaplandı .

  • reis bu programı ındırdım sonrasında setup halıne getrdım ama normal sekılde calsııyodu am setupdan sonra verı tabanı hatası verıyo bı dönus yaparsan bana sevınırım

  • AraGetir kısmında
    string deger = oku[0].ToString(); hata veriyor aynı program ama bende ki aspx ile yapıldı cs ile değil.
    InvalidOperationException was unhandled by user code
    Satır/Sütun için hiç veri yok hatası veriyor neden acaba

  • hasan :
    çevirme yaparken kodu eksik yazmış olabilirsiniz. Kodun tamamına bakmak lazım.

  • Merhaba programa bir datagridview ekledim bu datagridview seçilen filme göre kayıtları göstersin istiyorum fakat bunu nasıl yapacağım ? örnek vereyim mesela program seçili filme göre hangi koltukların dolu boş olduğunu gösterebiliyor bende aynı şekilde seçili filme göre o filmden yapılmış olan satışları veri tabanından çekecek ve bu satışları oluşturduğum datagridview’de gösterecek ama bir türlü gösteremedim lütfen yardımcı olurmusunuz ? hangi kodları yazmam gerekiyor ?

  • açarken kullanıcı adı şifre istemesi iyi olurdu

  • Sinema koltuklarını ne ile yapacağız acaba

  • @Şeyma
    Ayrıca veri tabanını comboBox a atamıyorum neden acaba yardımcı olabilirseniz sevinirim

  • bunun kaynak kodlarına yada access veri tabanı dosyasına nasıl olaşabilirim. yardımcı olursanız sevinirim

  • @emrullah
    projeyi indir dediğin zaman zipli hali geliyor ordan ulaşabilirsin

  • Keşke yaparken videoya çekip youtube de yayınlasaydınız. Şuan yapmak çok zor ve karmaşık.

  • @admin
    Merhaba iyi çalışmalar.
    Bende de hata veriyor(Hata:System.InvalidOperationException: ‘Satır/sütun için hiç veri yok.’)
    Ne yapabilirim?
    Şimdiden Teşekkürler.

  • @admin
    Merhabalar,
    Bu çalışmayı Access ile değil de MYSQL ile çalıştırabilir miyiz? Bilgilendirirseniz sevinirim.

  • Projenin Db dosyalarını alma şansımız var mı acaba

  • Bin – debug klasüründe

  • Forr

    rsion=”v12.0″ sku-“.NET FrameworkVersion-v4.7.2” />

    Sinema Bileti.exe – This application could not be started.

    This application requires one of the following versions of the

    .NET Framework:

    .NET Framework Version=v4.7.2

    Do you want to install this .NET Framework version now?

    Evet

    Hayır
    ÇÖZEMİYORUM BU HATAYI İNTERNETTE BULAMADIM. ÖDEVİM İÇİN ACİL GEREKLİ LÜTFEN YARDIM EDİN @admin

  • Çözümdeki bir veya daha fazla proje düzgün olarak yüklenemedi.
    Ayrıntılar için Çıkış Penceresini’ne bakın.
    hatasını veriyor ve düzelmiyor sebebi nedir

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir