Arama butonu
Bu konudaki kullanıcılar: 1 misafir
7
Cevap
1075
Tıklama
0
Öne Çıkarma
Ürünü birden fazla kategoriye eklemek
S
10 yıl
Onbaşı
Konu Sahibi

Yapmakta olduğum bir ticaret sitesinde bir takım sorunları çözemiyorum yardım edebilerseniz sitenin büyük bir bölümü bitmiş olacak.

Sorun şu : Ürün eklerken aynı ürünü bir kaç kategoriye ekliyorum.
Örnek : Herhangi marka bir telefonu hem Telefon Kategorisine hemde o markaya ait alt kategorisine ekliyorum.

< Resime gitmek için tıklayın >

Fakat aynı ürünü bir kaç kategoriye eklerken, seçmiş olduğum kategori sayısı kadar aynı isimde ürün ekleniyor.

< Resime gitmek için tıklayın >

Benim yapmak istediğim ise ne kadar fazla kategori seçilmiş olsada, ürünü eklerken sadece bir kayıt girmesi.

Bunu yaparken kullandıgım kod şu :

foreach (ListItem item in CheckBoxList1.Items)
{
if (item.Selected)
{
System.Data.SqlClient.SqlCommand cmd = DBTools.Komut("insert into Urunler (Adi,Foto,Sehir,Fiyat,Tarih,Ozellik,ID,PB,Indirim) values (@Adi,@Foto,@Sehir,@Fiyat,@Tarih,@Ozellik,@ID,@PB,@Indirim)");

cmd.Parameters.AddWithValue("@Adi", txtpname.Text.Trim());
cmd.Parameters.AddWithValue("@Foto", Picture_Name);
cmd.Parameters.AddWithValue("@ID", item.Value.ToString());
cmd.Parameters.AddWithValue("@Tarih", DateTime.Now);
cmd.Parameters.AddWithValue("@Ozellik", FCKeditor1.Value);
cmd.Parameters.AddWithValue("@Sehir", ddltown.SelectedValue);
cmd.Parameters.AddWithValue("@Fiyat", txtprice.Text.Trim());
cmd.Parameters.AddWithValue("@Indirim", txtsaleprice.Text.Trim());

}
}

Umarım anlatabilmişimdir, teşekkür ederim.

DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.

Üye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.

Üye Ol Şimdi Değil





< Bu mesaj bu kişi tarafından değiştirildi stylemania -- 4 Şubat 2015; 18:01:36 >

C
10 yıl
Yüzbaşı

Sahibinden.com da benzer bir yapıyı kullanıyor. Kullanıcı olarak markaların bir kategori olması beni rahatsız ediyor. Sebebiyse bir markanın ürününü diğeriyle karşılaştıramıyor olmam.
Veritabanını yeniden tasarlamanı tavsiye ediyorum.



< Bu ileti mini sürüm kullanılarak atıldı >

P
10 yıl
Binbaşı

şu mantıgımı arıyorsun http://www.kislaliyiz.com/Eticaret2.aspx




Bu mesajda bahsedilenler: @stylemania
H
10 yıl
Yüzbaşı

Benim anladığım kadarıyla 3. bir tablon daha olması gerekiyor. ilişki tablon. yapısını şu şekilde düşün

ID---KategoriID----UrunID
1 ------1 ------------ 2
2 ------2 ------------ 2
3 ------3 ------------ 2

bu tabloda gördüğün gibi 3 ayrı kategoride 2 numaralı id ye sahip ürün var. sorgulama işlemini bu tablo üzerinden yapacaksın.

Select UrunAdi,Fiyati From Urunlertablosu As U left join IliskiTablosu As I on U.ID=I.UrunID Where I.KategoriID=2

gibi bir kullanımın olacak. Sorguları kafadan yazdım yazım hataları olabilir. önemli olan senin mantığı anlaman. kolay gelsin





< Bu mesaj bu kişi tarafından değiştirildi Hakan5434 -- 5 Şubat 2015; 10:54:26 >
Bu mesaja 1 cevap geldi.

Bu mesajda bahsedilenler: @stylemania
İ
10 yıl
Yüzbaşı

Aynı şeyi bir kaç kategoriye ekliyorsan bir yanlışlık var zaten . Yapıyı değiştirme yoluna gitmelisin . Yukarda ki arkadaşın dediği gibi ilişki tablosunda tutmalısın sonrasında. Soruyu yanlış eklemiyorsam.


Bu mesaja 1 cevap geldi.
S
10 yıl
Onbaşı
Konu Sahibi

3. bir tablo olmasi mantiktikli bu sekilde sorunu halledebilecegimi zannediyorum .. Tesekkur ederim .




Bu mesajda bahsedilenler: @Erdinc20
S
10 yıl
Onbaşı
Konu Sahibi

xalpay, asil amacim dedigin gibi yapmakti fakat string'lerle aram pek iyi degil. Ara tablo ekleyerek yapmayi basardim biraz karisik oldu fakat sonuc olarak istedigim sekilde veriyi ekleyip gosterebiliyorum.
Ilgilinen herkese tesekkur ederim.



S
10 yıl
Onbaşı
Konu Sahibi

Dedigin gibi bundan baska tablo karmasasi. Fakat string kulllanarak yapabilseydim benim acimdan daha iyi olurdu cunku ileride yapacagim diger projelerde yardimi olurdu. Bu sekilde yaptigim biraz karisik oldu, ara tablo bir de trigger kullanarak hem arama islemleri hemde eklemede istedigim sonucu alabiliyorum.

String kullanarak ekleme ve gosterme isleminin nasil yapilabilecigi hakkinda yardimin dokunabilirmi acaba ?



DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.