Daten in zweiter Tabelle speichern

Hallo zusammen,
ich habe mich noch nicht allzu intensiv mit dem Shop beschäftigt.
Nun habe ich das Problem, dass ich die Daten der Bestellung und des Users in eine andere Tabelle speichern muss, welche auf einem anderen Server liegt. Leider finde ich absolut nicht die Stelle, an der die Datenbank bei neuen Bestellungen geschrieben wird.

Ich hoffe auf schnelle Hilfe,

Grüße,

mach ein Export und cronjob, der jede Nacht die Bestellungen exportiert oder rüberkopiert

Hallo, wow … das ging ja schnell.
Das habe ich mir auch überlegt, aber die Daten müssen just in time in eine andere Software

dann musst du ein Modul schreiben.
Ich würde vermutlich die Funktion finalizeOrder() nehmen, da kannst du deinen Code dran hängen und die Daten live schreiben. Aber sollte der andere Server aus welchen Gründen auch immer, nicht erreichbar sein, bekommt der Benutzer eine weiße Seite und nicht mal eine “Danke für Ihren Kauf” Meldung.

oh super, das mache ich… wie komme ich denn da an die Bestelldaten ran?
Also über welche Variablen…

ich weiß ja nicht, welche Daten du brauchst.
Am einfachsten kannst du ein print_r() von $this, $oBasket und $oUser machen, dann bekommst du den kompletten Inhalt der Objekte inklusive der Eigenschaften-Namen.
Ah ja, den eigenen Code solltest du in eine if-Bedingung packen:

if(!$blRecalculatingOrder) {
... der code ...
}

Vielen Dank, das hilft schon sehr weiter und Lob an diesen Support!

Allerdings weiß ich noch nicht genau, wie ich an die Artikeldaten gelange.
Ich benötige Artikelnummer, Menge, Einzelpreis
Und die Kundendaten, also Name, Anschrift, abw. Adresse

Ich finde leider die Datei nicht, wo die Daten in die Datenbank des Shops geschrieben werden, dann könnte ich es mir da abgucken.

wie gesagt, mach dir mal print_r() von den folgenden Variablen:
$this (das wir die Bestellung sein)
$oBasket (der Warenkorb des Benutzers)
$oUser (der Benutzer selbst).

Dort findest du alle Variablen und Werte.

Falls du in OXID 4.9 arbeitest, könntest du auch zum Testen das hier mal installieren


Dann dev-core und dev-console in der Modulverwaltung aktivieren.

Dann gibts du in das obere Feld

print_r($me);

ein.
Dort hast du ein oxUser Objekt, quasi das selbe wie auch $oUser in der besagten Funktion oben. Da siehst du alle Eigenschaften und deren Werte von oxUser

mit

print_r($order);

bekommst du die Werte deiner letzten Bestellung (wenn dein Benutzer keine hat, müsstest du kurz eine abschließen)

mit

print_r($basket);

bekommst du dein oxBasket Objekt. Wenn da nichts ist, logg dich mal im Frontend ein und lege ein paar Sachen in den Warenkorb.