Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Inkrementacja wartości ilość
Generic
post
Post #1





Grupa: Zarejestrowani
Postów: 224
Pomógł: 0
Dołączył: 31.10.2012

Ostrzeżenie: (10%)
X----


Witam. Napisałem prosty skrypt, który wkłada do tablicy przedmioty, które wybrał użytkownik. Wszystko działa dobrze jednak mam problem z wartością ilość, która zawiera informacje ile sztuk danego przedmiotu wybrał użytkownik. Napisałem instrukcję if, która sprawdza czy istnieje juz w tablicy element i jeśli tak to zwiększa jego ilość o wartość przychodzącą z POST. Jednak nie działa to tak jak należy. Czy ktoś może podpowiedzieć mi co robię nie tak? Z góry dziękuje i pozdrawiam.

  1. if(empty($_SESSION['koszyk']))
  2. {
  3. $_SESSION['koszyk'] = array();
  4. }
  5. foreach($_SESSION['koszyk'] as $zawartosc_koszyka)
  6. {
  7. $zawartosc_koszyka;
  8. }
  9.  
  10. if(isset($_POST['dodaj_do_koszyka']))
  11. {
  12. if($_SESSION['nazwa_produktu'] == $zawartosc_koszyka['nazwa_produktu'])
  13. {
  14. $zawartosc_koszyka['ilosc'] += $_POST['ilosc'];
  15. echo $zawartosc_koszyka['ilosc'];
  16. }
  17. else
  18. {
  19. array_push($_SESSION['koszyk'], array('nazwa_produktu'=> $_SESSION['nazwa_produktu'], 'cena' => $_SESSION['cena'], 'ilosc' => $_POST['ilosc']));
  20. }
  21. }
  22.  
  23. foreach($_SESSION['koszyk'] as $zawartosc_koszyka)
  24. {
  25. echo $zawartosc_koszyka['nazwa_produktu'];
  26. echo $zawartosc_koszyka['ilosc'];
  27. }
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Generic
post
Post #2





Grupa: Zarejestrowani
Postów: 224
Pomógł: 0
Dołączył: 31.10.2012

Ostrzeżenie: (10%)
X----


Napisałem ten kod na nowo. Wyszło mi coś takiego jak ponizej i nie mam pomysłu jak przestac dodawac do tablicy nazwe produktu ktory sie juz znajduje i zwiekszyc tylko jego ilosc. Probowalem roznym ifem jednak zaden nie dzialal.

  1. <?php
  2.  
  3. // Tworzy tablice w ktorej beda dodawane produkty
  4.  
  5. if(empty($_SESSION['koszyk']))
  6. {
  7. $_SESSION['koszyk'] = array();
  8. }
  9.  
  10. //Dodaje produkt po kliknieciu w dodaj do koszyka
  11.  
  12. if(isset($_POST['dodaj_do_koszyka']))
  13. {
  14. array_push($_SESSION['koszyk'], array('nazwa'=> $_SESSION['nazwa'], 'cena' => $_SESSION['cena'], 'ilosc' => $_POST['ilosc']));
  15. }
  16.  
  17. // Wyswietla dodane produkty
  18. foreach($_SESSION['koszyk'] as $wybrane_produkty)
  19. {
  20. echo $wybrane_produkty['nazwa'];
  21. echo $wybrane_produkty['ilosc'];
  22. }
  23. ?>


niektore rzeczy takie jak nazwa pobieram z sesyjnej bo nie mam ich w formularzu a zostalo to juz wczesniej pobrane na potrzeby wyswietlenie tytulu produktu np w miniaturce.

Wpadłem na pomysł zeby przeszukac tablice jednak zwraca mi ze nie znalazlo wartosci.

  1. if(isset($_POST['dodaj_do_koszyka']))
  2. {
  3. if(in_array('Nazwa produktu', $_SESSION['koszyk']))
  4. {
  5. //zwieksz tylko ilosc do istniejacego juz produktu
  6. }
  7. else
  8. {
  9. // dodaj nowy produkt
  10. }
  11. }
  12.  


Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 14.10.2025 - 18:20