folder Tahribat.com Forumları
linefolder Asp - Php - Cgi - Perl
linefolder [PHP - MYSQL] - Varyant Sistemi İle İlgili Beyin Fırtınası İsteği



[PHP - MYSQL] - Varyant Sistemi İle İlgili Beyin Fırtınası İsteği

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    lepusmorris
    lepusmorris's avatar
    Kayıt Tarihi: 31/Mart/2007
    Erkek

    asıl sorunum: tablo yapımı nasıl oluşturacağıma karar veremiyorum.

    örnek üzerinden ilerlemek gerekirse; 2 veya daha fazla varyantı olan bir ürün düşünün ve bunun stoğunu detaylı bir şekilde tutmak istiyorum.

    #RENK
    - Kırmızı
    - Beyaz
    - Siyah

    #BEDEN
    - Small
    - Medium
    - Large

    mesela yukarıdaki gibi varyantları olan bir tshirt ürünüm olsun. tüm renklerin ve bedenlerin kalan stoklarını anlık olarak listeleyebilmek istiyorum. aşağıdaki gibi neyden kaç tane kaldı görebilmek istiyorum. varyant sayısını sabit düşünmeyin. 1 de olabilir, 2 de, 3 de..

    - Kırmızı&Small
    - Kırmızı&Medium
    - Kırmızı&Large

    - Beyaz&Small
    - Beyaz&Medium
    - Beyaz&Large

    - Siyah&Small
    - Siyah&Medium
    - Siyah&Large

    - Kırmızı
    - Beyaz
    - Siyah
    - Small
    - Medium
    - Large

    ve ziyaretçi siteden ürün seçercen rengi ve bedeni ayrı ayrı seçecek. renkten kırmızıyı, bedenden de  small'u seçince "Kırmızı&Small" , "Small" ve "Kırmızı" dan stok düşürmeliyim.

    daha önce bu tarz bir çalışma yapan arkadaşlar var mı?

    lepusmorris tarafından 30/Eki/19 16:18 tarihinde düzenlenmiştir

    troll
  2. KısayolKısayol reportŞikayet pmÖzel Mesaj
    ontedi
    ontedi's avatar
    Kayıt Tarihi: 04/Eylül/2005
    Erkek

    Stok tablon

    id, urun_id, renk_id, beden_id, adet

    1,  5,         , 1         , 1           ,  40

    2,  5,         , 1         , 2           ,  14

    3,  5,         , 1         , 3           ,  99

    şeklinde olursa istediğin gibi olur diye tahmin ediyorum. Tablo okunabiliyordur umarım.

     

    ontedi tarafından 30/Eki/19 16:23 tarihinde düzenlenmiştir

    Matematikçi ve Yazılımcı. http://www.ontedi.com ve http://www.cizgi.site Siteme beklerim herkesi.
  3. KısayolKısayol reportŞikayet pmÖzel Mesaj
    lepusmorris
    lepusmorris's avatar
    Kayıt Tarihi: 31/Mart/2007
    Erkek
    ontedi bunu yazdı

    Stok tablon

    id, urun_id, renk_id, beden_id, adet

    1,  5,         , 1         , 1           ,  40

    2,  5,         , 1         , 2           ,  14

    3,  5,         , 1         , 3           ,  99

    şeklinde olursa istediğin gibi olur diye tahmin ediyorum. Tablo okunabiliyordur umarım.

     

    hocam beden ve renk varyantları sabit değil; özelleştirilebilir. yani varyant "Özellik - 1" deyip, altına A, B, C, D.. gibi seçenekler ekleyebilirim.

    ondan dolayı bu yapı uymuyor ve sipariş sayfasında bu özellikleri ayrı ayrı seçtireceğim. renk ve beden örneğinde olduğu gibi rengi ve bedeni ayrı ayrı seçecek.

    edit: yani varyant listemi ayrı bir tabloda tutuyorum. bu varyantlara alt seçenekleri ayrı bir tabloda tutuyorum. daha sonra bu varyantları ürünlerle ilişkilendiriyorum ayrı bir tabloda. tabi bir varyantın tüm seçeneklerini de eklemeyebiliyorum.

    lepusmorris tarafından 30/Eki/19 16:30 tarihinde düzenlenmiştir

    troll
  4. KısayolKısayol reportŞikayet pmÖzel Mesaj
    ontedi
    ontedi's avatar
    Kayıt Tarihi: 04/Eylül/2005
    Erkek

    Renkler ve bedenler tablon olsun. Ona göre sınırsız sayıda kombin yapabilirsin. Ama stok tablon bu kombinlere bağlı olmalı.


    Matematikçi ve Yazılımcı. http://www.ontedi.com ve http://www.cizgi.site Siteme beklerim herkesi.
  5. KısayolKısayol reportŞikayet pmÖzel Mesaj
    dhmm
    dhmm's avatar
    Kayıt Tarihi: 15/Eylül/2011
    Erkek

    Ilk aklima gelen bu sekilde olabilir :

     

    renkler(renk_id , renk)

    bedenler(beden_id, beden)

    urun(urun_id , *** )

    urun_varyantlari(urun_varyant_id, urun_id , renk_id , beden_id )

    urun_stok(urun_stok_id, urun_varyant_id , adet)

     

     


    🌌 Deniz kiyisina gidip... Yapayalniz dalgalari saatlerce seyretmek istiyorum.... 🌌
  6. KısayolKısayol reportŞikayet pmÖzel Mesaj
    lepusmorris
    lepusmorris's avatar
    Kayıt Tarihi: 31/Mart/2007
    Erkek

    hocalar yanıtlarınız için teşekkür ederim ama önerdikleriniz aradığım cevaplar değil malesef. daha somutlaştırmak gerekirse aşağıdaki videodan yapmak isteğime göz atabilirsiniz.

    https://youtu.be/Q3HfU1IuuQE?t=376


    troll
  7. KısayolKısayol reportŞikayet pmÖzel Mesaj
    JPriest
    JPriest's avatar
    Kayıt Tarihi: 09/Mart/2007
    Erkek

    https://stackoverflow.com/a/24941744/637724

    Burayı bi incele hocam


    Sen hiç kaval çaldın mı?
  8. KısayolKısayol reportŞikayet pmÖzel Mesaj
    manglerman
    manglerman's avatar
    Kayıt Tarihi: 30/Aralık/2003
    Erkek

    --variant tablosu yapısı
    VariantsTable
    {
    VariantId identity int,
    VariantName string
    }

    --ürün tablosu yapısı
    ProductTable
    {
    ProductId identity int,
    ProductName string
    }

    --ürünlerin variant tablosu yapısı
    ProductVariantChild
    {
    RowId identity int,
    ProductId,
    VariantId
    }

    --variant tablosu içeriği
    VariantId,VariantName
    1,Renk
    2,Size
    3,Telefon Kapasitesi

    --ürün tablosu içeriği
    ProductId,ProductName
    1,a tişört
    2,b tişört
    3,c tişört
    4,telefon

    --ürünlerin variant tablosu içeriği
    RowId,ProductID,VariantId,VariantContent
    1,1 (yani a tişörtü),1(yani renk), Siyah
    2,1 (yani a tişörtü),2(yani renk), XL
    3,4 (yani telefon),1(yani renk), Siyah
    4,4 (yani telefon),3(yani kapasite), 64 gb

     

     

     

    bu şekilde ilerleyebilrsn yada Siyah XL ve 64 gb gibi valueleri de ayrı bir child tabloda tutabilrsn. benim yapım buydu :)


    türk kızlarından sabun yapalım, rus kızları elini yıkasın.:)
  9. KısayolKısayol reportŞikayet pmÖzel Mesaj
    dhmm
    dhmm's avatar
    Kayıt Tarihi: 15/Eylül/2011
    Erkek
    lepusmorris bunu yazdı

    hocalar yanıtlarınız için teşekkür ederim ama önerdikleriniz aradığım cevaplar değil malesef. daha somutlaştırmak gerekirse aşağıdaki videodan yapmak isteğime göz atabilirsiniz.

    https://youtu.be/Q3HfU1IuuQE?t=376

    Hocam yazdigim yapida dedigin oluyor.

    Urtune istedigin kadar varyant ekle.... Secerkende varyant sec ....

     


    🌌 Deniz kiyisina gidip... Yapayalniz dalgalari saatlerce seyretmek istiyorum.... 🌌
  10. KısayolKısayol reportŞikayet pmÖzel Mesaj
    acemi-webci
    acemi-webci's avatar
    Kayıt Tarihi: 11/Haziran/2008
    Erkek

    ürün tanım tablonda sadece ürünün ismi olduğunu düşün

    varyant tablonda ürün idsi, rengi, bedeni (daha da özelleştirilebilir) ve stoğu olacak.

    stok düşerken bu varyant tablosundan düşeceksin.

    ya da

    ürünü her varyant için tekrar oluşturacaksın ama mantıksal bir gruplama yaparsın listelemelerde falan aynı üründen onlarca görünmemesi gerekir.

    her varyant için otomatik yaparsın bunu örn: ürünü ekledin varyant ve stok girdiğin bir ekrandan bütün varyantları stok adetleriyle birlikte ürün tablona oluşturacak.


    ...
  11. KısayolKısayol reportŞikayet pmÖzel Mesaj
    lepusmorris
    lepusmorris's avatar
    Kayıt Tarihi: 31/Mart/2007
    Erkek

    hocalar şimdi varyantların stoklarını ayrı ayrı tutsam hiçbir sıkıntı yok zaten ama varyantlar birbiriyle ilişkili olduğu için çıkamadım içinden.

    şimdi ürün_varyant_seçenekleri diye bir tablo açıp buraya TSHIRT ürününün kırmızısndan şu kadar, beyazından şu kadar, small'undan, medium'undan diye ayrı ayrı girebilirim. böyle olsa zaten dediğim gibi problem yok.

    sıkıntı kırmızısından stok var olabilir, smalldan da var olabilir ama kırmızısının small bedeninden kalmamış olabilir. yani sadece kırmızı ve small varyant seçeneklerinin stoklarına bakarsam yanılacağım. seçilen varyantların bütün kombinasyonlarını ve ayrı ayrı varyant seçeneklerinin tümünün stoklarını tutmam gerekiyor gibi düşünebilirsiniz. ayrıca beden ve renk diye bir sütun açamıyorum. çünkü varyantlar sabit değil. varyant1, varyant2 diye de açamıyorum; çünkü onunda belirli bir sayısı yok. 1 de olabilir, 2 de olabilir, daha fazla da.

     

    mevcut yapı aşağıdaki gibi:


    troll
Toplam Hit: 1195 Toplam Mesaj: 22
php