Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP]Zasada działania koszyka w sklepie internetowym.
przemo191
post 18.11.2011, 15:13:53
Post #1





Grupa: Zarejestrowani
Postów: 154
Pomógł: 3
Dołączył: 1.08.2011

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


Tworzę sklep internetowy na własną potrzebę, mam już produkty, kategorie itd... mam problem przy dodawaniu produktu do koszyka, a właściwie w stworzeniu samego koszyka. Tu pojawia się pytanie, jak działa taki koszyk internetowy, z czego on korzysta (chodzi mi o to czego będę musiał użyć sessie, cookie itp.) i na jakiej zasadzie on działa.

Bardzo proszę o nakierowanie mnie na rozwiązanie, mojego problemu.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
Sephirus
post 18.11.2011, 15:27:18
Post #2





Grupa: Zarejestrowani
Postów: 1 527
Pomógł: 438
Dołączył: 28.06.2011
Skąd: Warszawa

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


Najprostrza metoda to przetrzymywać tabelkę w sesji typu:

  1. array('id' => 1, 'quanitity' => 10),
  2. array('id' => 2, 'quanitity' => 1),
  3. array('id' => 4, 'quanitity' => 6),
  4. array('id' => 23, 'quanitity' => 7),
  5. (...)
  6. );


W każdym momencie masz to czego potrzebujesz czyli jakie przedmioty są w koszyku i ile ich jest - przy generacji koszyka pobierasz potrzebne dane z bazy, przeliczasz i wyświetlasz wink.gif


--------------------
If you're good at something, never do it for free.
Potrzebujesz skryptu JS lub PHP - szukasz kogoś kto przetestuje twoją aplikację pod względem bezpieczeństwa? Szybko i solidnie? Napisz ;)
Mój blog - Jak zwiększyć wydajność front-endu - O buforowaniu wyjścia w PHP słów kilka...
Go to the top of the page
+Quote Post
Micchaleq
post 18.11.2011, 15:34:30
Post #3





Grupa: Zarejestrowani
Postów: 186
Pomógł: 4
Dołączył: 13.10.2009

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


Ja kiedyś widziałem koszyk oparty na bazie danych wtedy będą potrzebne 2 tabelki
zamówienie i
realizacja

w zamówienie przechowujesz id klienta id produktów i sesja
a w realizacji id realizacji id produktu id klienta



--------------------
Go to the top of the page
+Quote Post
przemo191
post 18.11.2011, 16:23:43
Post #4





Grupa: Zarejestrowani
Postów: 154
Pomógł: 3
Dołączył: 1.08.2011

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


Dziękuję za odpowiedź.
@Sephirus a jak wyświetlić tą tablicę w pętli? np. chcę wyświetlić wszystkie id jeden pod drugim wraz z ilością produktów?
I jak dodać do tej tablicy kolejne wpisy?questionmark.gif


ps.
Nie używałem array.
Go to the top of the page
+Quote Post
qrooel
post 18.11.2011, 16:36:40
Post #5





Grupa: Zarejestrowani
Postów: 306
Pomógł: 42
Dołączył: 25.03.2010
Skąd: Kraków

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


Cytat(przemo191 @ 18.11.2011, 16:23:43 ) *
Dziękuję za odpowiedź.
@Sephirus a jak wyświetlić tą tablicę w pętli? np. chcę wyświetlić wszystkie id jeden pod drugim wraz z ilością produktów?
I jak dodać do tej tablicy kolejne wpisy?questionmark.gif


ps.
Nie używałem array.



A w jaki sposób wyświetlasz kategorie, czy produkty z bazy? Tak samo możesz zrobić z tablicami, foreach

Ten post edytował qrooel 18.11.2011, 16:37:12


--------------------
Strony WWW: http://arscreo.pl
Go to the top of the page
+Quote Post
przemo191
post 18.11.2011, 17:06:06
Post #6





Grupa: Zarejestrowani
Postów: 154
Pomógł: 3
Dołączył: 1.08.2011

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


Kategorie i produkty wyświetlam poprzez while.
Powiedzmy że mam coś takiego

  1. $cart = array (
  2. 'id' => 1, 'quanitity' => 1,
  3. 'id' => 10, 'quanitity' => 2,
  4. 'id' => 45, 'quanitity' => 3,
  5. 'id' => 5, 'quanitity' => 4,
  6. );


I jak to wyświetlić jeden pod drugim, chodzi mi przykładowo o taką strukturę.
1 | 1
10 | 2
45 | 3
5 | 4

Próbowałem przez while, ale coś nie działa. Z foreach nie korzystałem, nigdy.

edit.
Stworzyłem już ten efekt co zamierzałem, poprzez while. Dogrzebałem się do tego na jakimś forum, nie wiem tylko jak zliczyć wszystkie liniki jaki tam są, w tym wypadku cztery. Ale może ich być więcej, i tu pojawia się problem jaki warunek dać w while??

Teraz mam"
  1. $i = 1;
  2. $z = 4;
  3.  
  4. while($z >= $i){
  5. echo $cart['id'.$i]."<br />";
  6. echo $cart['quanitity'.$i]."<br />";
  7. $i++;
  8. }


Ten post edytował przemo191 18.11.2011, 17:32:26
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: 14.08.2025 - 00:41