Donja Posted September 3, 2019 Report Share Posted September 3, 2019 Hallo Ihr, wir haben vor ein paar Tagen PayPal aktualisiert. xt:commerce: 5.1.4 PayPal: 2.10.2 Den Update-Hinweis: "Bitte prüfen Sie in Ihren Templates, dass in product.html das Formular zum Artikel-Hinzufügen eine eindeutige Id hat. Alt:{form type=form name=product action='dynamic' link_params=getParams method=post} NEU:{form type=form name=product action='dynamic' link_params=getParams method=post id=\"main_product_form\" }" bin ich nachgegangen. Nun funktionierte die Bestellübersicht im Backend nicht mehr. Sie war schlichtweg leer. In der Datenbank war allerdings noch alles vorhanden. Demnach lag die Vermutung nah das in den Bestellungen, inhaltlich, irgendwas nicht korrekt drin steht. In der Tabelle xt_orders und der dazugrehörigen Spalte "orders_data" stand bei den letzten PayPal-Bestellungen folgendes drin: a:1:{s:13:"paypal_txn_id";s:17:"7XN04652C3399091R";} Das System lässt aber nur folgende Struktur zu: 7XN04652C3399091R Nachdem ich bei den betreffenden Bestellungen nur den zugelassenen Code eingefügt habe, wurden auch wieder alle Bestellungen abgebildet. Das Plugin habe ich erstmal deaktiviert. Wie kommt das zustande und wie kann ich dem Abhilfe schaffen? Danke und viele Grüße Link to comment Share on other sites More sharing options...
oputz Posted September 3, 2019 Report Share Posted September 3, 2019 Hallo, hab zwar 6.1.2 FREE, aber das gleiche Plugin. In der DB steht es exakt so wie du schriebst und funktioniert a:1:{s:13:"paypal_txn_id";s:17:"7XN04652C3399091R";} Nur die id habe ich ohne die 2 Backslash \ eingefügt: NEU:{form type=form name=product action='dynamic' link_params=getParams method=post id=\"main_product_form\" } Aber das hat vielleicht das Forum da reingemacht.? Link to comment Share on other sites More sharing options...
oldbear Posted September 3, 2019 Report Share Posted September 3, 2019 habe den Update heute auch gemacht ( ohne Backslashes ) => funktioniert bei einer 5.1.4 Grüße Link to comment Share on other sites More sharing options...
Donja Posted September 5, 2019 Author Report Share Posted September 5, 2019 Hallo Ihr, ja, hatte die Slashes natürlich entfernt. Das war nur der Hinweis welcher bei der Plugin-Aktualisierung da stand Danke dennoch. Leider komme ich kein Stück weiter. Mein Backend hat definitiv ein Problem wenn unter "order_data" folgendes Format steht: a:1:{s:13:"paypal_txn_id";s:17:"7XN04652C3399091R";} Steht nur die "ID", ist alles in Ordnung. Ich weiß hier leider nicht weiter. Bei allen anderen Zahlungsweisen steht unter "order_data" auch immer nur die "ID". Link to comment Share on other sites More sharing options...
Donja Posted September 7, 2019 Author Report Share Posted September 7, 2019 Hallo Ihr, ich habe mal ältere Bestellungen mit Paypal in der Datenbank angeschaut. Dort erscheint unter "order_data" auch nur die ID und nicht der Code "a:1{s:13: ...." Das heißt, hier muss/sollte nur die ID (Beispiel: 7XN04652C3399091R) drin stehen. Mich wundert es das es bei Euch mit samt dem Code zu funktionieren scheint. Link to comment Share on other sites More sharing options...
oputz Posted September 7, 2019 Report Share Posted September 7, 2019 Hallo, hab nochmal nachgesehen. Bis August (PayPal 2.9) stehen bei mir auch nur deine Beispiele drin, dann aktualisierte ich auf PayPal 2.10.1. Seit dem dann die serialisierten Daten. Drück in der Bestellübersicht mal F12 und schau ob du Fehlermeldungen entdeckst. Link to comment Share on other sites More sharing options...
Donja Posted September 9, 2019 Author Report Share Posted September 9, 2019 Hallo, ob F12 oder Strg+R oder das aktualisieren/Neu laden im Backend, macht keinen Unterschied. Das System bringt keine Fehlermeldung trotz Debugmodus. Es mag einfach nicht die Schreibweise " a:1:{s:13:"paypal_txn ...". Mich wundert sehr das es bei Euch scheinbar keine Probleme damit gibt. Ich habe mit allen anderen Zahlungsmitteln kein Problem. Bei den anderen Zahlungsmitteln wird in der Datenbank allerdings nur die ID eingetragen nicht serialisierten Daten. Ich bin ratlos. Link to comment Share on other sites More sharing options...
Donja Posted September 14, 2019 Author Report Share Posted September 14, 2019 in der php-error-log steht folgendes: PHP Warning: constant(): Couldn't find constant TEXT_PAYPAL_TXN_ID in /.../xtFramework/classes/class.order.php on line 890 In Zeile 890 steht folgendes: $record->fields['order_info_options'][] = array('text'=>constant('TEXT_'.strtoupper($tkey)), 'data'=>$tkey, 'value'=>$tval); Wenn ich in der Datenbank aus: a:1:{s:13:"paypal_txn_id";s:17:"7XN04652C3399091R";} folgendes mache: a:1:{s:13:"TEXT_PAYPAL_TXN_ID";s:17:"7XN04652C3399091R";} funktioniert die Darstellung im Backend wieder. Das kam mir seltsam vor. Scheint ja so das eine Text-Phrase nicht vorhanden ist. Ich habe jetzt für den Sprachtext: TEXT_PAYPAL_TXN_ID den Wert paypal_txn_id eingetragen, im Backend. Und nun scheint es zu gehen. Verrückt. Wie kann das passieren? Fehlen hier Schreibrechte bei der Installation/Update etc.? Link to comment Share on other sites More sharing options...
oputz Posted September 14, 2019 Report Share Posted September 14, 2019 Hi, ja das ist merkwürdig. Die Phrase TEXT_PAYPAL_TXN_ID gibt es bei mir nicht. Die Buchstabenkombination paypal_txn_id gibt es genau 1x: plugins\xt_paypal\callback\class.callback.php Zeile 151: $txn_data = array("paypal_txn_id"=> $this->data['txn_id']); Das wird bei dir auch so sein. Ist dein Backend original oder von Agentur angepasst? Link to comment Share on other sites More sharing options...
Donja Posted September 16, 2019 Author Report Share Posted September 16, 2019 Im Shopsystem - Original, steht in /.../xtFramework/classes/class.order.php on line 890 genau das gleiche: $record->fields['order_info_options'][] = array('text'=>constant('TEXT_'.strtoupper($tkey)), 'data'=>$tkey, 'value'=>$tval); Die "Phrase TEXT_PAYPAL_TXN_ID" existiert auch nicht direkt in meinen Dateien. Unter plugins\xt_paypal\callback\class.callback.php Zeile 151: steht bei mir auch das wie bei Dir: $txn_data = array("paypal_txn_id"=> $this->data['txn_id']); Habe nun Sorge das dieses Verhalten auch andere Zahlungsmittel betreffen könnte. Da ich hier nicht genau nachvollziehen kann warum ich das an dieser Stelle so lösen muss. Link to comment Share on other sites More sharing options...
Alex@4tfm Posted September 16, 2019 Report Share Posted September 16, 2019 Das hängt mit der Art und Weise zu tun, wie serialisierte Arrays funktionieren. Legt einfach keinen Textkey an, das führt zu einem Fehler. Link to comment Share on other sites More sharing options...
Donja Posted September 17, 2019 Author Report Share Posted September 17, 2019 Hast Du eine andere Lösung? Wie genau kann ich das denn verhindern? Ohne das besagte Textfeld kann ich, wie gesagt, das Backend nicht mehr anschauen, solange PayPal aktiv ist. Link to comment Share on other sites More sharing options...
Alex@4tfm Posted September 17, 2019 Report Share Posted September 17, 2019 Das wäre wohl eher ein Fall für den XT Support. (Dieses Problem hatten wir noch nicht, daher kann ich nicht sagen woran es liegt.) Link to comment Share on other sites More sharing options...
Donja Posted September 17, 2019 Author Report Share Posted September 17, 2019 Ich kann es dort versuchen. Es besteht kein SupportAbo. SupportAbo in Höhe von 759,- € wäre für diesen Fall einfach zu teuer. Zur Not setze ich das System nochmal neu auf und teste durch. Wenn es sonst nirgends auftaucht, kann es nur am Theme liegen oder an einem spezifischen Plugin. Die Anbieter schreibe ich auch nochmal an. Ich gebe Bescheid, falls sich was tut. Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.