Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Struktura tabeli do stworzenia sklepu
Rafiks1992
post 5.07.2017, 18:47:43
Post #1





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 27.06.2017

Ostrzeżenie: (0%)
-----


Siemka, ogarnalem sobie skrypt rejestracji logowania i stronke w ktorej uzytkownik moze zobaczyc swoje dane wszystko przerobilem na PDO ladnie i dziala smiga pieknie i teraz chcialbym stworzyc sklep w ktorym uzytkownik bedzie mogl cos kupowac, na razie nie ma znaczenia co wazne zeby kod mi dzialal wtedy pojdzie juz jak po masle wink.gif!

Stworzylem dwie tabele pierwsza o nazwie przedmioty oraz druga sklep
w tabeli przedmioty dalem kolumny: id, userid, count, name - id to wiadomo, userid pobierac chce stad id uzytkownika, count to jaka ilosc danego przedmiotu posiada oraz name czyli nazwa tego przedmiotu

w tabeli sklep stworzylem kolumny id, name, price, - id wiadomka, name to nazwa tego przedmiotu oraz price czyli cena przedmiotu. zastanawiam sie jeszcze czy count tutaj tez by sie nie przydalo bo nie wiem jak zrobic zeby na stanie sklepu byla nieskonczona ilosc, tak wiec zrobilbym count 99999999 ^^

Myslicie ze taka struktura tabel bylaby dobra? Czy czegos brakuje mi tutaj? Nie chodzi mi w sumie dokladnie o jakis kod bo jak bede mial tabele to jakos sobie z tym poradze, tylko od strony logicznej czy to bedzie dobrze dzialac tongue.gif prosze o wypowiedzi wink.gif!
Go to the top of the page
+Quote Post
Tomplus
post 6.07.2017, 07:19:14
Post #2





Grupa: Zarejestrowani
Postów: 1 875
Pomógł: 230
Dołączył: 20.03.2005
Skąd: Będzin

Ostrzeżenie: (0%)
-----


Czyli nie robisz relacyjnej bazy danych?

a co do liczby nieskończonej, to nie lepiej stworzyć kolumnę `unlimited` gdzie 1 to nieskończone, domyślnie 0. W końcu wartość 9999999 bardzo zaśmieci ci rzeczywisty obraz stanów gdybyś chciał w przyszłości liczyć je do statystyk.
Nie mówiąc już że nawet sprzedając np. książki w wersji cyfrowej, to będziesz zmuszony np. do udostępnienia w sprzedaży limitowanej ich edycji. Etc.

Ten post edytował Tomplus 6.07.2017, 07:23:46
Go to the top of the page
+Quote Post
Rafiks1992
post 6.07.2017, 08:50:43
Post #3





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 27.06.2017

Ostrzeżenie: (0%)
-----


Hmm co masz na mysli piszac relacyjne tabele? Chcialbym to zrobic jakos sprawnie i dobrze pod wzgledem logicznym dlatego napisalem swoj pomysl krotki i prosbe o pomoc z tym :-P pomysl z tym unlimited jest genialny haha.gif 0 nie ma przedmiotow 1 sa przedmioty proste rozwiazanie o takie cos wlasnie mi chodzi :-P
Go to the top of the page
+Quote Post
Puszy
post 6.07.2017, 08:51:01
Post #4





Grupa: Zarejestrowani
Postów: 279
Pomógł: 42
Dołączył: 10.10.2011

Ostrzeżenie: (0%)
-----


Tak jak pisał Tomplus, skorzystaj z relacji. Poniżej struktura którą polecam

Klient
id
primary_invoice_address
customer_class
email
password
...

Adres
id
customer_id (relacja z Klient)
nazwa,ulica,numer_domu,kod_pocztowy etc.
address_type (adres faktury lub adres dostawy)

Produkt
id
product_name
product_price
stock (stan magazynowy)
pre_sale_quantity
stock_no_limitation
is_service (usługą może być np koszt transportu, opłaty manipulacyjne)

Zamówienie
id
customer_id (Klient)
invoice_address_id (Adres)
delivery_address_id (Adres)
total_gross

PozycjaZamówienia
id
product_id (Produkt)
quantity
price_gross
vat_rate


Oczywiście to jest totalna podstawa, i tak brakuje wielu rzeczy. Z doświadczenia powiem jedynie że w programowaniu tam gdzie wchodzą operacje jakkolwiek powiązane z pieniędzmi, należy bardzo uważać i zabezpieczać się przed każdym, nawet najmniej oczekiwanym scenariuszem.

Ten post edytował Puszy 6.07.2017, 08:51:44
Go to the top of the page
+Quote Post
Rafiks1992
post 6.07.2017, 14:07:50
Post #5





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 27.06.2017

Ostrzeżenie: (0%)
-----


Dosc konkretnie to opisales i dziekuje Ci za to skorzystam napewno ale na poczatek potrzebuje tylko ogarnac skrypt do dzialania zeby zobaczyc co i jak i wtedy bede wdrazal kolejne i kolejne kolumny do tabel ;P


Myslicie ze na taka podstawe do nauki i zrozumienia tego wystarcza 3 tabele? Rozpisze jeszcze raz i prosze o ocenke, ma to byc zwykla bardzo banalna opcja do kupowania owocow w sklepie przez uzytkownikow biggrin.gif


Tabela1: dane uzytkownika po rejestracji oraz np 100zl poczatkowych pieniedzy
userid, username, useremail, userpassword, usermoney,
czyli wygladaloby to np tak:
Userid:1, Username:Tester1, Useremail:Tester1@o2.pl, Testerpassword: blablablabla, Usermoney:100zł.

Tabela2: chcialbym aby w tej tabeli znajdowalo sie to ile przedmiotow posiada kazdy z zarejestrowanych uzytkownikow czyli np:
id_uzytkownika, id_przedmiotu, ilosc_posiadanych_przedmiotow, - uzytkownik o id 1 posiada 100 sztuk przedmiotu o id 1 - nie wiem czy dobrze to rozmyslilem ^^

Tabela3: ta tabela moglaby robic za przedmioty dostepne do kupienia w sklepie czyli np:
id_przedmiotu, ilosc_w_sklepie (tutaj zrobic nieskonczona liczbe tylko nie wiem jeszcze raz), cena_przedmiotu, nazwa_przedmiotu
czyli w bazie wygladaloby to np tak:
ID:1 , Count:Unlimited, Price:150, Name: Trustawka
ID:2, Count:Unlimited, Price:500, Name: Gruszka
i tak zrobic z 5 owocków do kupienia w celach testowych wink.gif

Myslicie ze cos takiego byloby wporzadku czy inaczej to wymyslec?
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: 19.07.2025 - 08:36