Hallo!
Hm. Hm. Hm. Mal überlegen... noch ne Sekunde, bitte... OK. Hab vielleicht eine Idee: benenn mal $warenkorb in $wk um (nur in der Funktion), oder definier die Variable $warenkorb in der Funktion als "lokal". Dann sollte es funktionieren. Ich vermute, dass der PHP Interpreter in der Funktion das $warenkorb als die Instanz von WK interpretiert => In der Session eine Instanz speichern??? - Macht wohl wenig Sinn => Fehler...
Na, woher willst Du als PHP-nicht-Kenner das wissen? Das schlimmste - Du hattest Recht!!! Verstehe ich aber nicht!? Das eine ist die Variable in einer Methode der Klasse, das andere die Instanz der Klasse. Warum kann sich das überschneiden?
Aber vielleicht hat ja jemand noch einen Tipp, wie ich diese blöde if-Abfrage loswerde:
if(!$_SESSION["warenkorb"]){
$warenkorb = array();
}else{
$warenkorb = $_SESSION["warenkorb"];}
Denn sonst meckert er am Anfang immer, "das sei kein Array", an den ich da was anfügen will! Und die Steht auch noch in der Methode!
Hat es eigentlich sinn, in der Klasse als erstes mal ein biosschen Code auszuführen, also direkt am Anfang den Warenkorb aus der Session in als eine Eigenschaft der Klasse zu initiieren?
also was der Art
class warenkorb{
$korb = $_SESSION["warenkorb"];
...
Was aber leider nicht funktioniert.
Ich frage mich halt, ob ich es besser direkt mache, oder erst durch den Aufruf einer Methode aus dem eigentlichen Script, was für Modularität ja wieder nicht so toll wäre, oder?
Viele Grüße
Andreas