foxmag Posted May 25, 2011 Report Share Posted May 25, 2011 Hallo! Habe folgendes Problem mit PayPal: Ich möchte vor der Veröffentlichung der Subseite subpage_success.html und nachdem der Kunde bei PayPal etwas gemacht hat, den Bestellstatus überprüfen und falls der Kunde wirklich bezahlt hat (PayPal-Status "Completed"), ihm die Gegenleistung auf der Seite subpage_success.html bringen. Auf der Seite checkout.success.php, die kurz vor der Seite subpage_success.html ausgeführt wird, habe ich durch meinen eigenen Plugin (eben hier 'module_checkout.php:success') Bestellstatusüberprüfung eingebaut (38 - bei mir bedeutet Completed, $success_order - Object von der Subseite checkout.success.php). function check() { global $success_order; //38 - bei mir bedeutet Completed if ($success_order->order_data['orders_status_id'] == 38) { ... } }[/PHP] Obwohl die Bezahlung erfolgreich war, bekomme ich an der Stelle folgendes Ergebnis: $success_order->order_data['orders_status_id'] = [b]16[/b], das heißt, Bestellstatus scheint zu diesem Moment den Wert "Offen" zu haben. Field "orders_status" aus der Tabelle "xt_orders" von der Datenbank zum Moment der Status-Prüfung bringt das gleiche Resultat. Am Ende des Vorgangs, wenn die Seite [b]subpage_success.html[/b] schon veröffentlicht war, steht in der Datenbank richtig [b]38[/b]. Wenn ich die Bestellstatusabfrage durch "Aktualisieren" des Browsers widerhole, bringt $success_order->order_data['orders_status_id'] auch richtig [b]38[/b]. Anscheinend benutze ich falsche Variable für die Statusabfrage. Profis, bitte, Hilfe! P.S. Moneybookers hat im Shop fast den gleichen Programmablauf (Programmstruktur), aber funktioniert reibungslos. Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.