Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php]Zwiększanie licznika
Forum PHP.pl > Forum > Przedszkole
matyskiewicz
W jaki sposób zwiększać licznik z poniższego przykładu?

  1. <?php
  2. function addToCart($zamId, $zamIlosc)
  3. {
  4.    $item = isset($_SESSION['cart']['item']) ? $_SESSION['cart']['item'] : 0;
  5.    $item++;
  6.  
  7.    $_SESSION['cart'] = array($item => array('id' => $zamId, 'ilosc' => $zamIlosc));
  8. echo $item;
  9.    header("location: index.php?module=shoppingCart");
  10. }
  11. ?>


Po wprowadzeniu dowolnej ilości danych print_r($_SESSION) wyświetla:
  1. Array
  2. (
  3. [cart] => Array
  4. (
  5. [1] => Array
  6. (
  7. [id] => 6
  8. [ilosc] => 2
  9. )
  10.  
  11. )
  12.  
  13. )

Czyli jak widać $_SESSION['cart']['item'] zawsze równa się 1... :/
nospor
raz uzywasz indeksu o nazwie 'item' a raz zmiennej o nazwie $item. Do sesji zapisujesz tylko zmienną $item, ktora jest liczba , wiec nie dziw sie ze sprawdzanie indeksu o nazwie 'item' daje ci zawsze 0, gdy taki index w sesji nie istnieje smile.gif
matyskiewicz
Jeśli dobrze zrozumiałem:
  1. <?php
  2. $item = isset($_SESSION['cart'][$item]) ? $_SESSION['cart'][$item] : 0;
  3. ?>

Lecz w tym momencie nadal gdzieś popełniam bład.

Jeszcze żeby była pewność
$_SESSION jest zmienną globalną i mogę ją spokojnie wykonywać wewnątrz funkcji.
nospor
Cytat
Jeszcze żeby była pewność
$_SESSION jest zmienną globalną i mogę ją spokojnie wykonywać wewnątrz funkcji.
Nie no, dzieki za wyjasnienie.... tongue.gif

korzystasz teraz z $item, zanim ona jeszcze jest utworzona. No usiadz przez chwile i zastanow sie troche a nie piszesz na chybil trafil smile.gif
matyskiewicz
Czyli znów krok w tył...

Dobra jak to nasza polonistka w ogólniaku mówiła: "Każdy dochodzi w swoim czasie".
Nieco przekombinowałem...
Mnie to zajęło 2 dni (no dobra 1,5) ale z sukcesem.
  1. <?php
  2. $item = isset($_SESSION['cart']) ? $_SESSION['cart'] : 0;
  3.    $_SESSION['cart'][] = array('id' => $zamId, 'ilosc' => $zamIlosc);
  4. ?>

Dzięki nospor, za ironiczną, sarkastyczną ale pomoc tongue.gif
nospor
Cytat
Dzięki nospor, za ironiczną, sarkastyczną ale pomoc
W moich wypowiedziach nie bylo ani ironi ani sarkazmu. jesli tak to odebrales to albo ty sie podszkol albo ja (z polaka zawsze bylem kiepski i moge nie rozumiec niektorych pojec winksmiley.jpg )

w swoich wypowiedziach chcialem ci jedynie zwrocic uwage na bledy ktore robisz. nie chcialem ci podac rozwiązania, bo uwazalem, ze do tak banalnego rozwiązania moglbys dosc sam - tylko i wylacznie z pozytkiem dla ciebie.
matyskiewicz
Moja wypowiedź była z przymrużeniem oka, nie obrażam się czy nie oburzam.
Cytat(nospor @ 12.05.2009, 12:01:21 ) *
w swoich wypowiedziach chcialem ci jedynie zwrocic uwage na bledy ktore robisz. nie chcialem ci podac rozwiązania, bo uwazalem, ze do tak banalnego rozwiązania moglbys dosc sam - tylko i wylacznie z pozytkiem dla ciebie.

Jestem tego samego zdania iż do wszystkiego trzeba dojść o własnych siłach (gdybym chciał gotowca to użyłbym oscommerce), dziękuję Ci za wskazówki! Dobrze że przypominasz userom forum o funkcji w jaką jesteśmy wyposażeni (myślenie).
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.