Admin Paneli (Yeni Kitap Kayıt İşlemi) Admin.aspx sayfamıza yeni
Transkript
Admin Paneli (Yeni Kitap Kayıt İşlemi) Admin.aspx sayfamıza yeni
Admin Paneli (Yeni Kitap Kayıt İşlemi) Admin.aspx sayfamıza yeni bir HyperLink kontrolü ekliyoruz. NavigateUrl’sine aşağıdaki bağlantıyı oluşturuyoruz. Böylece, Link tıklandığında yeni_kitap_kayit.ascx UserControl sayfamızı PlaceHolder kontrolümüz içerisinde çağırmış oluyoruz. Kitap Ekle linki tıklandığında, admin.aspx sayfamızın görüntüsü aşağıdaki şekilde olacaktır. Yeni_kitap_ekle.ascx UserControl sayfamızın Html (Source) kodları aşağıdaki şekildedir. <%@ Control Language="C#" AutoEventWireup="true" CodeFile="yeni_kitap_kayit.ascx.cs" Inherits="admin_yeni_kitap_kayit" %> <%@ Register assembly="FredCK.FCKeditorV2" namespace="FredCK.FCKeditorV2" tagprefix="FCKeditorV2" %> <style type="text/css"> .style1 { width: 640px; text-align: left; } .style2 { width: 93px; text-align: left; } .style5 { width: 93px; height: 59px; } .style7 { width: 93px; } </style> <table style="width:100%;"> <tr> <td class="style2"> </td> <td class="style1" style="text-align: center; background-color: #0099CC"> <b>Kitap Bilgileri</b></td> </tr> <tr> <td class="style7"> Kitap Adı</td> <td class="style1"> <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox> </td> </tr> <tr> <td class="style7"> Yazarı</td> <td class="style1"> <asp:TextBox ID="TextBox2" runat="server"></asp:TextBox> </td> </tr> <tr> <td class="style7"> Yayınevi</td> <td class="style1"> <asp:TextBox ID="TextBox3" runat="server"></asp:TextBox> </td> </tr> <tr> <td class="style7"> Kitap Detayı </td> <td class="style1"> <asp:TextBox ID="TextBox4" runat="server" Height="111px" TextMode="MultiLine" Width="452px"></asp:TextBox> </td> </tr> <tr> <td class="style7"> Fiyatı</td> <td class="style1"> <asp:TextBox ID="TextBox5" runat="server"></asp:TextBox> </td> </tr> <tr> <td class="style5"> Kategorisi</td> <td class="style1"> <asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack="True" DataSourceID="AccessDataSource1" DataTextField="kategori_adi" DataValueField="id" onselectedindexchanged="DropDownList1_SelectedIndexChanged"> </asp:DropDownList> <asp:AccessDataSource ID="AccessDataSource1" runat="server" DataFile="~/App_Data/kitap.accdb" SelectCommand="SELECT * FROM [kategoriler]"> </asp:AccessDataSource> </td> </tr> <tr> <td class="style7"> Alt kategorisi</td> <td class="style1"> <asp:DropDownList ID="DropDownList2" runat="server" AutoPostBack="True" DataSourceID="AccessDataSource2" DataTextField="alt_kategori_adi" DataValueField="id"> </asp:DropDownList> <asp:AccessDataSource ID="AccessDataSource2" runat="server" DataFile="~/App_Data/kitap.accdb" SelectCommand="SELECT * FROM [altkategoriler]"></asp:AccessDataSource> </td> </tr> <tr> <td class="style7"> </td> <td style="text-align: center; background-color: #0099CC"> <b >Kitap Dosyaları</b></td> </tr> <tr> <td class="style7"> Resim1</td> <td class="style1"> <asp:FileUpload ID="FileUpload1" runat="server" /> </td> </tr> <tr> <td class="style7"> Resim2</td> <td class="style1"> <asp:FileUpload ID="FileUpload2" runat="server" /> </td> </tr> <tr> <td class="style7"> Resim3</td> <td class="style1"> <asp:FileUpload ID="FileUpload3" runat="server" /> </td> </tr> <tr> <td class="style7"> Resim4</td> <td class="style1"> <asp:FileUpload ID="FileUpload4" runat="server" /> </td> </tr> <tr> <td class="style7"> Video</td> <td class="style1"> <asp:FileUpload ID="FileUpload5" runat="server" /> </td> </tr> <tr> <td class="style7"> </td> <td class="style1"> <asp:Button ID="Button1" runat="server" Text="Kitap Bilgilerini Kaydet" onclick="Button1_Click" /> <asp:Label ID="Label1" runat="server" Text=" "></asp:Label> </td> </tr> </table> Kategorisi ve alt kategorisi DropDownList kontrollerinin veritabanı bağlantısı için iki tane AccessDataSource kontrolü eklenmiştir. Birinci AccessDataSource 1 kontrolümüz veritabanımızdan ana kategorileri çekecek şekilde ayarlanacaktır. İkinci AccessDataSource2 kontrolümüz veritabanımızdan, DropDownList1 içerisinden seçilen ana kategorinin alt kategorilerini çekecek şekilde ayarlanacaktır. DropDownList1 kontrolünün SelectedIndexChanged olayına aşağıdaki kodlar eklenecektir. protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e) { //Label1.Text = DropDownList1.SelectedValue; AccessDataSource2.SelectCommand = "SELECT * FROM altkategoriler WHERE kategori_id=" + DropDownList1.SelectedValue.ToString() ; AccessDataSource2.DataBind(); } Böylece DropDownList1 içerisinden seçilen ana kategorinin alt kategorileri, DropDownList2 içerisinde görüntülenecektir. DropDown kontrollerinin AutoPostBack özelliği aktif hale getirilmelidir. Bunun nedeni, seçim yapılınca sayfanın bilgileri post edip refresh yapması içindir. Kitap Bilgilerini Kaydet Butonu tıklandığında ise aşağıdaki kodlar çalıştırılacaktır; using using using using using using using using using System; System.Collections.Generic; System.Linq; System.Web; System.Web.UI; System.Web.UI.WebControls; System.Web.Configuration; System.Data.OleDb; System.Data; public partial class admin_yeni_kitap_kayit : System.Web.UI.UserControl { string isim = DateTime.Now.Month.ToString() + DateTime.Now.Day.ToString() + DateTime.Now.Minute.ToString() + DateTime.Now.Second.ToString(); protected void Page_Load(object sender, EventArgs e) { } protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e) { //Label1.Text = DropDownList1.SelectedValue; AccessDataSource2.SelectCommand = "SELECT * FROM altkategoriler WHERE kategori_id=" + DropDownList1.SelectedValue.ToString() ; AccessDataSource2.DataBind(); } protected void Button1_Click(object sender, EventArgs e) { // String baglanti2 = WebConfigurationManager.ConnectionStrings["veritabani"].ConnectionString; // String sql_cumlesi2 = "INSERT INTO kitap(kitap_adi,yazar,yayinevi,fiyat,kategorisi,altkategorisi,resim1,resim2,resim3,res im4,video,detay) VALUES(@adi,@yzr,@yayinev,@fyt,@kategori,@altkategori,@r1,@r2,@r3,@r4,@vdo,@dty)"; OleDbConnection baglanti = new OleDbConnection(); // Veritabanı baglanti nesnesi tanımlanıyor baglanti.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0; Data Source=" + Server.MapPath("~/App_Data\\kitap.accdb"); //Veritabanına bağlanılıyor baglanti.Open();//Veritabanını açılıyor. String sql_cumlesi = "INSERT INTO kitap(kitap_adi,yazar,yayinevi,fiyat,kategorisi,altkategorisi,resim1,resim2,resim3,res im4,video,detay) VALUES(@adi,@yzr,@yayinev,@fyt,@kategori,@altkategori,@r1,@r2,@r3,@r4,@vdo,@dty)"; OleDbCommand komut = new OleDbCommand(sql_cumlesi, baglanti); komut.Parameters.Add("@adi", OleDbType.Variant).Value = TextBox1.Text; komut.Parameters.Add("@yzr", OleDbType.Variant).Value = TextBox2.Text; komut.Parameters.Add("@yayinev", OleDbType.Variant).Value = TextBox3.Text; komut.Parameters.Add("@fyt", OleDbType.Variant).Value = TextBox5.Text; komut.Parameters.Add("@kategori", OleDbType.Variant).Value = DropDownList1.SelectedValue; komut.Parameters.Add("@altkategori", OleDbType.Variant).Value = DropDownList2.SelectedValue; komut.Parameters.Add("@r1", OleDbType.Variant).Value = isim.ToString()+".jpg"; komut.Parameters.Add("@r2", OleDbType.Variant).Value = isim.ToString()+"1.jpg"; komut.Parameters.Add("@r3", OleDbType.Variant).Value = isim.ToString()+"2.jpg"; komut.Parameters.Add("@r4", OleDbType.Variant).Value = isim.ToString()+"3.jpg"; komut.Parameters.Add("@vdo", OleDbType.Variant).Value = isim.ToString()+"v.swf"; komut.Parameters.Add("@dty", OleDbType.Variant).Value = TextBox4.Text; komut.ExecuteNonQuery(); FileUpload1.SaveAs(Server.MapPath("../kitaplar/"+isim.ToString()+".jpg")); FileUpload2.SaveAs(Server.MapPath("../kitaplar/" + isim.ToString() + "1.jpg")); FileUpload3.SaveAs(Server.MapPath("../kitaplar/" + isim.ToString() + "2.jpg")); FileUpload4.SaveAs(Server.MapPath("../kitaplar/" + isim.ToString() + "3.jpg")); FileUpload5.SaveAs(Server.MapPath("../kitaplar/" + isim.ToString() + "v.swf")); Label1.Text = "Kitap Bilgileri kaydedildi<meta http-equiv='refresh' content='3';url='admin.aspx?sayfa=yeni_kitap_kayit'"; //Response.Redirect("admin.aspx?sayfa=yeni_kitap_kayit"); } }
Benzer belgeler
Tam Metin - İstanbul Teknik Üniversitesi
gideriminin hedeflendiği MAP çöktürmesinin arıtma şemasındaki yeri belirlenerek uygulama esasları tanımlanmıştır.
Deneysel çalışmanın yürütüldüğü kesim ve et işleme operasyonlarının gerçekleştirild...
Sayın Nimet EREN, 08 / Eylül / 2008
iletisim.getIlcelerByIlId(ddlSehir.SelectedValue)
ddlIlce.DataTextField = "AD"
ddlIlce.DataValueField = "ID"
ddlIlce.DataBind()
ddlIlce.Items.Insert(0, New ListItem("İlçe Seçiniz ", ""))
End Sub
Pr...