Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP][MySQL]Warianty, połączenie w MYSQL, Pomysł na połączenie wariantowości
denis95x
post 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ść smile.gif

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! smile.gif

Ten post edytował denis95x 13.05.2019, 21:02:50
Go to the top of the page
+Quote Post
trueblue
post 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ś.


--------------------
Go to the top of the page
+Quote Post
denis95x
post 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? facepalmxd.gif sciana.gif

A co jesli dojdzie nam do koloru i rozmiaru kolejny wariant? np: opakowanie ?
Go to the top of the page
+Quote Post
trueblue
post 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.


--------------------
Go to the top of the page
+Quote Post
denis95x
post 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
Go to the top of the page
+Quote Post
mrk9109
post 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 ?
Go to the top of the page
+Quote Post
Pyton_000
post 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ł
Go to the top of the page
+Quote Post
Tomplus
post 14.05.2019, 07:15:50
Post #8





Grupa: Zarejestrowani
Postów: 1 834
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...
Go to the top of the page
+Quote Post
trueblue
post 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%)
-----


Cytat(Pyton_000 @ 14.05.2019, 08:08:29 ) *
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ł


Cytat(trueblue @ 13.05.2019, 22:20:06 ) *
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ś.



--------------------
Go to the top of the page
+Quote Post
Pyton_000
post 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 smile.gif
Go to the top of the page
+Quote Post
igusiek
post 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ł.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 20.04.2024 - 05:38