![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 6 Pomógł: 0 Dołączył: 12.03.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam wszystkich.
Oto mój koszyk na zakupy (IMG:style_emoticons/default/smile.gif)
Pozostało mi tylko zapis mojego zamówienia do bazy danych MySQL . Tutaj pojawia się problem bo nie mam pojęcia jak to zrobić. Stworzyłbym tabelę 'zamowienia' i tam przechowywałbym id_zamowienia, nazwy produktów, cene, date_zamowienia i id_uzytkownika. Na stronie posiadam system logowania i nazwa_uzytkownika trzymam w sesji. Jest ktoś w stanie mi pomóc bądź nakierować jak to zrobić (IMG:style_emoticons/default/questionmark.gif) Dziękuję i pozdrawiam. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 144 Pomógł: 12 Dołączył: 16.03.2007 Ostrzeżenie: (0%) ![]() ![]() |
Po pierwsze masz trochę nie optymalny kod zliczenia ilości towarów jak i obliczanie wartości zamówienia można zrobić w jeden pętli foreach a nie w 2 !
Po drugie źle się do tego zabierasz. Masz w bazie tabele produkt w którym każdy produkt ma swoje unikalne id powiedzmy idproduct, każdy user ma też swoje id. Więc tworzymy tabele zamówienia w którym zawrzesz datę zamówienia adres wysyłki rodzaj płatności id klineta itp: idzamowienia,przesylka,user_iduser .... (user_iduser jest kluczem obcym który powinien łączyć się z id w tabeli userzy) dodatkowo w tabeli zamowienia tworzysz klucz obcy id_zamowione_produkty i tworzysz tabele pomocnczą, która zawiera id produktu zamówionego oraz id danego zamowienia: zamowienia_idzamowienia , product_idproduct W ten sposób otrzymasz dobrze znormalizowaną bazę danych ponieważ nie powielasz nazw i innych danych dotyczących produktów itp. Pamiętaj o otworzeniu odpowiednich więzów integralności ( ALTER TABLE ADD CONSTRAINT ..... ), wtedy możesz się zabezpieczyć przed usunięciem danego produktu z tabeli produts gdzy dany towar jest zamówiony itp. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 9.10.2025 - 09:38 |