Kundenlogin zerstört Warenkorbberechnung

Kreidetafel.de

Aktives Mitglied
21. Januar 2013
78
0
Hallo !

Ich habe folgenden Problem :

Ich erstelle über den Hook 126 "HOOK_WARENKORB_CLASS_FUEGEEIN" aus der letzen eingefügten Warenkorbposition einen "Unique"-Artikel (Werden als einzelne Positionen angezeigt) :

PHP:
$_SESSION['Warenkorb']->PositionenArr[$lastPosition]->cUnique = $v->_getUniqueId();

und speichere zur Preisberechnung relevante Daten als Objekt im Artikel (bzw. parallell zum testen als Session Array) :

PHP:
$_SESSION['Warenkorb']->PositionenArr[$lastPosition]->Artikel->validData = $validData;
//$_SESSION["test_cache"][$lastPosition] =$validData;

Im Hook 99 "HOOK_LETZTERINCLUDE_INC" errechne ich aus den Daten den Preis :
PHP:
$validData = $_SESSION['Warenkorb']->PositionenArr[$n]->Artikel->validData;  
//$validData= $_SESSION["test_cache"][$i];
//do something

Das funktioniert auch alles soweit, wenn man allerdings nicht als Kunde angemeldet ist, und dies mit bestehendem Warenkorb nachholt,
gehen die Daten verloren und meine vormals "Uniquen" Positionen werden zusammengelegt und die Preisberechnung versagt.
$_SESSION["test_cache"] bleibt bestehen, aber $_SESSION['Warenkorb']->PositionenArr[$lastPosition]->cUnique wird "" (Leer).

Denselben Effekt habe ich wenn ich die Daten als Variationen oder Warenkorbeigenschaften speichere.

Worin besteht mein Fehler bzw. gehe ich falsch vor ?

Vielen Dank für Vorschläge !
 

Kreidetafel.de

Aktives Mitglied
21. Januar 2013
78
0
AW: Kundenlogin zerstört Warenkorbberechnung

Keiner irgendwelche Vorschläge ? Habe inzwischen auch versucht die Daten mit serialize()/unserialize() in einem Funktionsattribut zu speichern, leider gehen die Daten weiterhin bei einem Kundenlogin verloren.
Wenn man bereits als Kunde eingeloggt ist, funktioniert alles Tadellos...

Wie kann ich PHP Objekte in einen Artikel im Warenkorb durchgängig speichern ?