3 Mayıs 2011 Salı

Ziyaretçi Defteri Yapımı. Asp.NET ile (Dil VB). Veritabanı olarak access

Selam arkadaşlar.Ben RECEP YAZIR  Ziyaretçi defteri yapalım diyorum. Asp.NET ile (Dil VB). Veritabanı olarak access kullanacağız (ziyaretci.mdb adlı bir veritabanı dosyası oluşturalım tablo adı da "tablo1" olsun. Tablonun alanları sırasıyla
no ---- otomatik sayı
adisoyadı ----metin
eposta------ metin
mesaj----metin
tarih----tarih/saat
onay----metin

oluşturduğumuz bu vertabanı dosyasını studio.net de App_Data klasörüne kopyalayalım. Ziyaretçi defterimizin tamamı 3 sayfadan oluşacak. Bunun için menü çubuğundaki “website” menüsünden “Add New Item” i tıklayıp sayfalarımızı ekleyelim (yaz.aspx—oku.aspx—kullanici.aspx).

yaz.aspx sayfamızı açalım ve çalışmamıza devam edelim.

3 adet textbox, 2 adet label, 1 adet buton ekleyelim
Textbox1-------Buraya girilen veriler veritabanımızın adisoyadi alanına gidecek
Textbox2------- “ “ “ eposta alanına gidecek
Textbox3------- “ “ mesaj alanına gidecek
Textbox3------ properties kısmından “TextMode” kısmını “MultiLine” yapınız (bu birden fazla satır metin yazabilmeniz için)

Buton ---- Properties den text özelliğine “Gönder” yazınız
Label1 için properties den text kısmına “Mesajınız Gönderilmiştir” yazınız ve yine properties den visible özelliğini false yapınız
Label2 için properties den text kısmına “Hatalı Giriş” yazınız ve bunun da visible özelliğini false yapınız

Şimdi kodlama yaz.aspx sayfası için Gönder butonuna çift tıklayarak kodlamaya geçelim

Kod kısmında öncelikle “General”-“Declarations” kısmına “Imports System.Data.OleDb” yazalım
“Oku”-“Declarations” kısmına

Dim baglan As OleDbConnection
Dim isle As OleDbCommand

Yazalım. Gönder Butonu içerisine ise
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click


If TextBox1.Text <> "" And TextBox2.Text <> "" And TextBox3.Text <> "" Then
baglan = New OleDbConnection("Provider=Microsoft.Jet.OleDb.4.0; Data Source=|DataDirectory|\ziyaretci.mdb")
baglan.Open()
isle = New OleDbCommand("insert into tablo1(adisoyadi,eposta,mesaj,tarih,onay) values('" + TextBox1.Text + "','" + TextBox2.Text + "','" + TextBox3.Text + "',now(),'HAYIR')", baglan)
isle.ExecuteNonQuery()
baglan.Close()
Label1.Visible = True
Label2.Visible = False
TextBox1.Text = ""
TextBox2.Text = ""
TextBox3.Text = ""
Else
Label1.Visible = False
Label2.Visible = True
End If
End Sub

Kodlarını yazalım.

Yukarıda textboxlardaki bilgiler sırasıyla adisoyadi,eposta,mesaj kısmına yollanacaktır. “now()” komutu ise tarih alanına o anki tarihi gönderir, “ ‘HAYIR’ “ kısmı ise veritabanındaki onay alanına HAYIR yazısını gönderir. Bu HAYIR yazısını kullanmamızın sebebi onay verilmeyen (kullanici.aspx sayfasında EVET haline getireceğiz) mesajların yayınlanmamasını sağlamaktır.
<o> </o>
Şimdi oku.aspx sayfasını açalım ve oradaki işlemlere geçelim
<o> </o>
Tasarım sayfasına Toolbox kısmının Data bölümünden bir tane DataList ekleyelim (DataList1) ve bunu veritabanına bağlayalım.
<o> </o>
DataList1 imizi eklediğimizde nesnenin sağ üst köşesinde bulunan Data Task işaretine tıklayalım (Nesneyi ilk eklediğimizde zaten açık haldedir). Choose Data Source kısmından New Data Source diyelim. Access kullandığımız için gelen pencereden Access Database yi seçip Ok diyelim, Browse butonuna tıklayıp App_Data klasörü içerisindeki ziyaretci.mdb dosyamızı seçelim ve Next diyelim. Burada sadece adisoyadi, eposta, mesaj ve tarih kısmını seçelim (okuyucuya sadece bu bilgiler görünecektir, diğerlerini kullanici.aspx sayfasında kullanacağız. Ardından sağ taraftaki Where butonuna tıklayalım gelen pencerede
<o> </o>
Column dan “onay” ı, Operator den “Like”, Source den “none” kısmını seçelim ve sonrasında açılan Value kısmına EVET yazalım . Add butonuna tıkladığımızda SQL komutları otomatik olarak oluşacaktır. Buradaki amaç veritabanındaki onay kısmı EVET olan bilgilerin görünmesidir. Ok ve Next diyelim.
<o> </o>
Gelen pencereden Text Query butonuna tıklayalım ve karşımıza gelen küçük pencereye OK diyelim. Eğer veritabanında onay kısmı evet olan bilgi yok ise sadece vertabanı alanları görünecektir. Finish diyelim. Bundan sonra isterseniz veritabanını açıp direkt olarak birkaç bilgi giriniz ve oku.aspx sayfasını çalıştırınız (onay kısmına evet vermediyseniz sayfada bilgiler görünmeyecektir.bu işlem sadece deneme amaçlıdır.)
<o> </o>
Gelelim kullanici.aspx sayfasının tasarımına;
<o> </o>
Tasarım sayfamıza 2 adet textbox, 1 adet buton ve 1 adet label ekleyelim
<o> </o>
Textbox1 kullanıcı adı girişi için kullanılacak
Textbox2 şifre girişi için kullanılacak
Label1 hatalı giriş olduğunda uyarı için kullanılacak
<o> </o>
Textbox2 nin properties inde TextMode yi Password yapalım
Label1 in text özelliğine “Hatalı Giriş” yazalım ve visible özelliğini false yapalım
<o> </o>
Sayfamıza Toolbox kısmı Data bölümünden bir GridView ekleyelim.
GridView1 in propertiesinden Visible özelliğini False yapalım ( sayfa ilk açıldığında görünmeyecek, kullanıcı adı ve şifre doğru girildiğinde görünecektir)
<o> </o>
Şimdi GridView1 i veritabanımıza bağlayalım. Eklediğimiz bu nesnenin sağ üst kısmındaki GridView Tasks kısmından Choose Data Source kısmınan New Data Source diyelim. Gelen pencereden Access DataBaseyi seçelim ve OK diyelim
Browse den App_Data klasöründeki ziyaretci.mdb veritabanı dosyamızı seçelim ve Next diyelim
Gelen kısmda veritabanı alanlarının hepsini ister tek tek işaretleyin isterseniz yıldız “*” ı tıklayıp hepsini seçin. Bu işlemden sonra Advenced butonuna tıklayın ve karşınıza gelen pencereden “Generate INSERT, UPDATE, and DELETE statements kısmını işaretleyn , Order By butonuna tıklayıp Sort By den no alanını işaretleyin ve hemen sağ kısımdaki seçeneklerden Descending i işaretleyip OK butonuna basınız. Tekrar OK tıklayın
Next deyin ve Text Query butonuna basınız (bağlantıyı test etmek için kullanılır). Finish diyelim; pecere kapanacaktır.
<o> </o>
Yine sağ üst köşedeki GridView1 Task kısmına tıklayın (büyük ihtimalle zaten açıktır.) Enable Paging-Enable Deleting-Enable Editing kısımlarını işaretleyiniz.
<o> </o>
Enable Paging : GridView1 i sayfalara ayırır
Enable deleting: Veritabından bilgi silmek için kullanılır
Enable Editing: Buradan veritabnındaki bilgileri değiştirme işlemi yapılır. Burada veritabanındaki onay kısmındaki HAYIR ı EVET yapabiliriz. İsterseniz diğer bilgileri de değiştirebilirsiniz.
<o> </o>
Sayfayı çalıştırdığımızda herhangi bir bilgi görünmeyecektir. Çünkü başlangıçta GridView1 nesnemizin Visible özelliğini False yapmıştık. Şimdi kullanıcı adı ve şifreyi doğrulayıp GridView1 in Visible özelliğini True yaptıralım.
<o> </o>
Buton a çift tıklayıp kod alanına geçelim.
<o> </o>

<o> </o>
<o> </o>
If TextBox1.Text = "fatih" And TextBox2.Text = "1453" Then<o></o>
GridView1.Visible = True<o></o>
Label1.Visible = False<o></o>
Else<o></o>
GridView1.Visible = False<o></o>
Label1.Visible = True<o></o>
<o> </o>
End If<o></o>
Kodlarını yazalım…<o></o>
<o> </o>
Arkadaşlar dikkatli bir şekilde adım adım ilerlerseniz yapacağınıza inanıyorum.. kolay gelsin..:) Eger hata varsa Yorum yapıp mesaj atablirsiniz (  recepyazir@gmail.com  ). Elimden geleni yaparım.
<o> </o>
SAYGILAR.<o></o>

6 yorum:

  1. Hocam çok sağol ya işime yarayacak bu.

    YanıtlaSil
  2. rica ederiz. yardımcı olabildiysek ne mutlu bize..:)

    YanıtlaSil
  3. Kod kısmında öncelikle “General”-“Declarations” kısmına “Imports System.Data.OleDb” yazalım
    “Oku”-“Declarations” kısmına

    Dim baglan As OleDbConnection
    Dim isle As OleDbCommand

    kısmı anlamadım ve yarında sınavım var hay aksı

    YanıtlaSil
  4. harika konu

    www.aktif-frm.net

    YanıtlaSil
  5. hocam çok güzel bir paylaşım olmuş emeğinize sağlık.Yalnız bir sorunumuz oluştu bilgi değiştirmek suretiyle güncelle yaptığımız zaman hata veriyor.Nedeni bir türlü bulup sorunu gideremedik lokal host kullanıyoruz.Yardımcı olursanız seviniriz.Sağlıcakla kalın.saygılar

    YanıtlaSil
  6. www.parasayma.org
    Dilediğiniz para sayma makinesini Türkiye'nin neresinde olursanız olun teslim ediyor. Bulunduğunuz şehirdeki referanslarımızı sunuyoruz. Ayrıca teknik destek hizmetlerimiz konusunda hızlı çözümler üretip mağduriyetinizi gideriyoruz.

    YanıtlaSil