[PHP][MySQL]Warianty, połączenie w MYSQL, Pomysł na połączenie wariantowości |
[PHP][MySQL]Warianty, połączenie w MYSQL, Pomysł na połączenie wariantowości |
13.05.2019, 21:01:57
Post
#1
|
|
Grupa: Zarejestrowani Postów: 79 Pomógł: 0 Dołączył: 21.02.2015 Skąd: Bielsko-Biała Ostrzeżenie: (0%) |
Cześć
Planuję wziąć się za wariantowość produktów, ale nie mam pomysłu jak się za to zabrać. Może ktoś już coś takiego robił i podsunie (naprowadzi) jakiś pomysł? Dla przykładu - najprościej: Mamy produkt w sklepie XYZ Produkt występuje w: KOLORACH: czerwony, zielony, czarny ROZMIARACH: S, M, L, XL, XXL I jak teraz połączyć to i definiować ceny dla każdego z wariantów. np: czerwony + S = 14,00 zielony + S = 15,00 czerwony + XL = 16,00 Najlepiej definiować ceny? Czy ustalić jakoś jako "wariant = cena X+Y+Z" - gdzie X to cena bazowa produktu a Y i Z to cena wariantu (dodaje - sumuje) Ktoś jakiś pomysł? Doradźcie! Ten post edytował denis95x 13.05.2019, 21:02:50 |
|
|
13.05.2019, 21:20:06
Post
#2
|
|
Grupa: Zarejestrowani Postów: 6 761 Pomógł: 1822 Dołączył: 11.03.2014 Ostrzeżenie: (0%) |
Tabela: id_produkt, id_kolor, id_rozmiar. Jeśli cena produktu jest ustalana indywidualnie dla każdego produktu na podstawie kombinacji koloru i rozmiaru, to tu dodatkowe pole: cena.
Jeśli kolor i i rozmiar powodują zwyżkę ceny identyczną dla każdego produktu, to ją (zwyżkę) zawierasz w tabelach, które podałeś. -------------------- |
|
|
13.05.2019, 21:32:40
Post
#3
|
|
Grupa: Zarejestrowani Postów: 79 Pomógł: 0 Dołączył: 21.02.2015 Skąd: Bielsko-Biała Ostrzeżenie: (0%) |
Czyli dla każdego wariantu po kolei ustalać ceny ?
Jesli kolorów będzie 5 a rozmiarów 3 -> tworzymy 15 wierszy w mysql ? przykład: 1. czerwony XS - 10,00 2. czerwony S - 11,00 3. czerwony M - 12,00 4. zielony XS - 10,50 5. zielony S - 11,50 6. zielony M - 12,50 Nie ma prostszego rozwiązania? A co jesli dojdzie nam do koloru i rozmiaru kolejny wariant? np: opakowanie ? |
|
|
13.05.2019, 21:34:34
Post
#4
|
|
Grupa: Zarejestrowani Postów: 6 761 Pomógł: 1822 Dołączył: 11.03.2014 Ostrzeżenie: (0%) |
A czego oczekujesz skoro ceny zależne są od wariantów?
Podałem Ci też drugie rozwiązanie. I obydwa są najprostsze. -------------------- |
|
|
13.05.2019, 21:40:43
Post
#5
|
|
Grupa: Zarejestrowani Postów: 79 Pomógł: 0 Dołączył: 21.02.2015 Skąd: Bielsko-Biała Ostrzeżenie: (0%) |
Ciekawe jak mają to rozwiązane w przypadku wiekszej ilości wariantów.
nasunęło mi się na myśl - np. drukarnia internetowa: https://www.drukomat.pl/wizytowki |
|
|
14.05.2019, 05:23:00
Post
#6
|
|
Grupa: Zarejestrowani Postów: 445 Pomógł: 3 Dołączył: 4.06.2010 Ostrzeżenie: (0%) |
Piszesz swoje ? Czy używasz jakiegoś gotowego systemu ?
|
|
|
14.05.2019, 07:08:29
Post
#7
|
|
Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) |
Kiedyś w jednym z systemów używaliśmy czegoś takiego że produkt bazowy miał swoją cenę np. koszukla polo biała 100zł. Potem każdy z rodzajów wariantów np. kolor, rozmiar itd. miał wartość +/- xxx zł np. kolor czerwony +9zł do ceny bazowej. Rozmiar XXXL +10zł i tak finalnie koszulka polo czerwona XXXL kosztowałą 119zł
|
|
|
14.05.2019, 07:15:50
Post
#8
|
|
Grupa: Zarejestrowani Postów: 1 835 Pomógł: 225 Dołączył: 20.03.2005 Skąd: Będzin Ostrzeżenie: (0%) |
Niestety jeżeli chcesz mieć możliwość życia wariantów to jest to najlepsze rozwiązanie.
tabela_produkt : {id, nazwa, idKategorii} tabela_atrybut : {id, idProduktu, typAtrybutu, wartosc} w tabeli atrybut możesz mieć atrybuty związane z ceną, kolorem, rozmiarem Można to dalej rozszerzać np.: tabela_grupa_produktow : {id, nazwa, idKategorii} a tabela_produkt : {id, idGrupyProduktow} I tak dalej... |
|
|
14.05.2019, 07:41:15
Post
#9
|
|
Grupa: Zarejestrowani Postów: 6 761 Pomógł: 1822 Dołączył: 11.03.2014 Ostrzeżenie: (0%) |
Kiedyś w jednym z systemów używaliśmy czegoś takiego że produkt bazowy miał swoją cenę np. koszukla polo biała 100zł. Potem każdy z rodzajów wariantów np. kolor, rozmiar itd. miał wartość +/- xxx zł np. kolor czerwony +9zł do ceny bazowej. Rozmiar XXXL +10zł i tak finalnie koszulka polo czerwona XXXL kosztowałą 119zł Jeśli kolor i i rozmiar powodują zwyżkę ceny identyczną dla każdego produktu, to ją (zwyżkę) zawierasz w tabelach, które podałeś. -------------------- |
|
|
14.05.2019, 09:55:30
Post
#10
|
|
Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) |
Ojtam ojtam
|
|
|
19.05.2019, 12:29:24
Post
#11
|
|
Grupa: Zarejestrowani Postów: 16 Pomógł: 0 Dołączył: 5.02.2004 Ostrzeżenie: (0%) |
Miałem podobny problem i rozwiązałem go jak trueblue napisał.
|
|
|
Wersja Lo-Fi | Aktualny czas: 24.04.2024 - 02:49 |