Veritabanından verileri listeledikten sonra veritabanına kayıt işlemini görelim. Kayıt işlemi listelemeye nazaran biraz dahi basittir. Listelemede verileri listelerken GridView kontrolünü kullanmış ve bu kontrolün tasarımını değiştirmiştik. Kayıt işleminde sadece kod yazacağız mesaj yazacağımızı formu normal bir şekilde oluşturuyoruz. Her zamanki gibi ilk önce kodları verip daha sonra açıklamalara geçelim.
<%@ Import Namespace=”System.data.oledb” %>
<%@ Page Language=”VB” ContentType=”text/html” ResponseEncoding=”utf-8″ %>
<script runat=”server”>
Sub mesajkayit(Src As Object, E As EventArgs)
dim baglanti as new oledbconnection
dim sorgu as new oledbcommand
baglanti.connectionstring=”Provider=Microsoft.jet.oledb.4.0;data source=” & server.MapPath(“as1.mdb”)
baglanti.open()
sorgu.connection=baglanti
sorgu.commandtext=”insert into Tablo1 (yazan,mesaj,tarih) values (@degisken_yazan,@degisken_mesaj,@degisken_tarih)”
sorgu.Parameters.Add(“@degisken_yazan”, textbox1.text)
sorgu.parameters.add(“@degisken_mesaj”,textbox2.text)
sorgu.Parameters.Add(“@degisken_tarih”,datetime.now.tostring)
sorgu.executenonquery()
End Sub
</script>
<html>
<body>
<form runat=”server”>
<table cellpadding=”0″ cellspacing=”0″>
<tr>
<td colspan=”3″ align=”center”>MESAJ YAZ</td>
</tr>
<tr>
<td>İsim :</td>
<td colspan=”2″><asp:TextBox ID=”TextBox1″ runat=”server” /></td>
</tr>
<tr>
<td>Mesaj :</td>
<td colspan=”2″><asp:TextBox ID=”TextBox2″ runat=”server” TextMode=”MultiLine” /></td>
</tr>
<tr>
<td colspan=”3″><asp:Button ID=”Button1″ runat=”server” Text=”KAYDET” OnClick=”mesajkayit” /></td>
</tr>
</table>
</form>
</body>
</html>

Kodlara baktığımızda SQL sorgusuna kadar yine veritabanı bağlantı kodlarımız öncekilerle aynı.
sorgu.commandtext=”insert into Tablo1 (yazan,mesaj,tarih) values (@degisken_yazan,@degisken_mesaj,@degisken_tarih)”
kod satırı ile sırasıyla Tablo1 deki yazan,mesaj,tarih alanlarına @yazan,@mesaj,@tarih değişkenlerini kaydediyoruz.
sorgu.Parameters.Add(“@degisken_yazan”, textbox1.text)
satırı ile SQL sorgumuzda kullanabileceğimiz @degisken_yazan isminde bir değişken oluşturduk. Textbox1 deki bilgiyi de bu değişkene aktardık.
sorgu.executenonquery()
kod satırı ile sorgumuzu çalıştırıyoruz. Listelemede sorgumuzu çalıştırırken executereader() kullanmıştık. Kayıt işlemlerinde ise executenonquery() kullanıyoruz.
sorgu.Parameters.Add(“@degisken_tarih”,datetime.now.tostring)
kod satırı ile bugünün tarihini degisken_tarih adlı değişkene aktarıyoruz.
HTML formunda ise butonun Onclick olayına “mesajkayit” yazarak bu isimdeki kod bölümüne gitmesini sağlıyoruz.
Kayıt işleminde karşımıza şöyle bir hata çıkabilir. “İşlem Güncelleştirilebilir bir Sorgu içermelidir”. Bu hata veritabanımıza kayıt iznimizin olmamasıdan kaynaklanıyor.
Bu hatayı aldığımızda sırasıyla şu işlemleri yapmalıyız. Bilgisayarıma sağ tıklayın. Yönet menüsünden Hizmetler ve Uygulamalar altında İnternet İnformation Services ayarlarında Web Sitelerine sağ tıklayın ve özelliklere gelin. Giriş Dizini bölümünde Okuma ve Yazma seçeneklerini işaretleyin. Çalıştırma İzinleri bölümünden Yalnızca Komut Dosyaları seçeneğini seçin. Uygula diyin ve çıkan pencerede Tümünü seç ve tamam diyin. Artık sunucumuzun kök dizinindeki tüm klasörlere okuma ve yazma izni vermiş olduk. Daha sonra dosyalarımızın bulunduğu dizin içinbu izinleri devralmamız gerekiyor. Bunun içinde Web siteleri bölümünün altında klasörümüze sağ tıklayıp Tüm Görevler/İzin Sihirbazı menüsünü açalım. Seçenekleri hiç değiştirmeden İleri diyip tüm izinleri devralalım. Artık sayfamızı çalıştırabiliriz. Aşağıdaki resimden bu işlemlere bakabiliriz.








Mayıs 17th, 2010 at 22:01
Çok saolun çok işime yaradı
bide sil update felan koysanız gerçekten süper olur.Ayrıca o mebim verdiğim abuk subuk pdf lerden bir başka olmuş sağolun özelliklede gridview olayı güzel sizi tebrik ediyorum başarılarınızın devamını dilerim