Witam,
od jakiegoś czasu pisze obiektowo w PHP. Do tej pory wszystko było ok... niestety piękne dni minęły i nastał czas chaosu.
Stworzyłem sobie klasę shoppingCart. Obecnie jest za długa żeby całą wklejać. W niej mam oczywiście kilka metod publicznych i prywatnych. Klasa nie ma żadnych zmiennych składowych.
Dane dotyczące koszyka gromadzę na zasadzie:
$_SESSION['Cart'][$ID] = $Count; gdzie: $ID - id produktu, $Count - ilość;
Błędy jakie mam występują jedynie na hostingu jaki posiadam. Lokalny serwer na kompie obsługuje mi wszystko normalnie.
Wszystkie błędy powiązane są z wykorzystaniem tablicy $_SESSION. Przykładowo:
Fatal error: Cannot use object of type shoppingCart as array in xxx/shoppingCart.php on line 284
Felerny kod metody:
public function AddToCart($ID,$Quantity=1){
$_SESSION['Cart'][$ID] += $Quantity; // Linia w ktorej wystepuje blad
if($_SESSION['Cart'][$ID] <= 0) $this->Delete($ID);
}
Wywołanie koszyka:
$Cart = new shoppingCart();
Ostatecznie, wywołanie metody jest następujące:
$Cart->AddToCart($ID,$Q); Gdzie obie dane są odpowiednimi danymi z GET'a.
Co może być nie tak? Ma ktoś jakiś pomysł? Czy może to być różniąca się konfiguracja PHP na obu serwerach?