stoje wlasnie przed trudnym pytaniem, moze mi pomozecie,
otoz robie katalog produktow, pozniej bazujac na nim koszyk zakupow i system realizacji zamowien/wystawiania faktur.
Skonczylem dodawanie produktow/edycje/usuwanie/przenoszenie itp, ale pojawil sie pewien problem, otoz zalozmy ze w sklepie dzis jest "myszka" za 9zl, ktos ja zakupil i zaplaci, doszlo do tranzacji i wystawienia faktury- wszystkie dane sa w bazie.
Nastepnego dnia ta sama mysza podrozala o 10zl. Tym samym trzeba dokonac aktualizacji produktu- wchodzimy do starej "myszka" i zmieniamy cene. W tym przypadku nadpisuja sie chyba w bazie wszelkie informacje o tym produkcie zarowno w koszyku klienta, na fakturach itp ?
Klient wchodzi do sklepu i przeglada swoje zamowienia. patrzy ze myszka ma inna cene niz placil- fvat tez ma inna cene i sie wnerwia ze musi doplacic ?!
Z drugiej strony, problem mozna rozwiazac uniemozliwiajac edycje produktow, przynajmniej ceny, st vat. Gdy cena sie zmieni, bedzie trzeba dodac nowy produkt kopiujac opsi i inne dane tego starego, ktoremu mozemy zmienic status na =zablokowany. Jednak w tym przypadku w bazie pojawiaja sie zbedne powtorzenia.
Jeszcze innym rozwiazaniem bedzie np. zapisywanie zamiast relacji poszczegolnych wartosci, np. koszyk bedzie mial postac:
id, nazwa, cena, zamawiajacy
1,myszka,20,Aleksander Wielki
produkt:
id,nazwa, cena,opis,itp...
1,myszka,10, jakas myszka ze stara cena,itp
Ktore rozwiazanie bedzie najlepsze ?
Przegladalem rozne systemy sklepow internetowych, ale to zupelnie co innego wiekszosc z nich dziala na zasadach relacji i powiazac w bazie.
Dodam, ze projekt zawierac bedzie standardowo 3tys produktow, aktulizacje cen od 1tyg-1roku