pisałam już kiedyć o koszyku. Wszystkie problemy z nim związane rozwiązałam i wydawało mi się, że już wszystko jest ok, ale zapomniałam zmienić ustawień serwera na register_globals = off, po tej zmianie nie trzyma mi tego koszyka. Nie pamięta zmiennej $stan, co wydaje się być logiczne, ale teraz proszę o pomoc, co muszę zrobić, by jednak ten koszyk działał z register_globals = off.
Fragment jak mam to zrobione:
<?php ... $koszyk=$_SESSION['koszyk']; $dodaj=$_GET['dodaj']; $usun=$_GET['usun']; $zmien=$_GET['zmien']; $first=$_GET['first']; ... class koszyk { /* tablica asocjacyjna zawierajaca stan koszyka */ /* klucz, to wartosc id produktu, wartosc to ilosc elementow */ var $zawartosc; function dodaj($element, $ilosc) { $this->zawartosc[$element] += $ilosc; } function usun($element, $ilosc) { if ($this->zawartosc[$element] > $ilosc) $this->zawartosc[$element] -= $ilosc; else } function zmien($element, $ilosc) { $this->zawartosc[$element] = $ilosc; } function stan() { return $this->zawartosc; } } if (!$koszyk) $koszyk = new koszyk; ... if ($dodaj) $koszyk->dodaj($dodaj1, 1); //dodaj($element, $ilosc) - dodaje $ilosc $elementow do koszyka ... $stan = $koszyk->stan(); //zwraca zawartosc w postaci hasza ... //i wyświetlanie koszyka if ($stan) { $ilewkosz=0; { } } ?>
próbowałam robić coś w stylu:
$stan=$_SESSION['stan'];
session_register("stan");
ale to nie pomogło.