Claudiocool Posted August 22, 2017 Share Posted August 22, 2017 (edited) Hallo Kollegen, ich habe hier die Sofortüberweisung eingerichtet und teste gerade... Alles funktioniert, bis auf den Erfolgslink. In den Serverlogs sehe ich, dass der angesprungen wird und dann via http302 auf die Shopstartseite zurückgeht. Die Bestellung ist korrekt im System erfasst, alles passt soweit, nur sieht mein Kunde ja so nicht, ob alles klar gegangen ist, ohne dass er jetzt extra in seinem Bestellverlauf nachsehen müsste. Die angeforderte Datei .../modules/sofortbanking/confirmation.php existiert Der Aufruf in dem Projekt bei Sofort: ..../modules/sofortbanking/confirmation.php?user_variable_1=-USER_VARIABLE_1-&hash=-USER_VARIABLE_1_HASH_PASS- Wo setze ich denn jetzt am Besten an mit der Suche, was da schief läuft? Edited August 27, 2017 by Claudiocool (see edit history) Link to comment Share on other sites More sharing options...
Scully Posted August 22, 2017 Share Posted August 22, 2017 (edited) Hallo Claudio, Du hast leider nur die relativen Pfade angegeben, die absoluten wären aber spannender. U.a. ob der Sprachprefix dort auch drinne stehen. Sodann: Die letztliche Umleitung auf die Startseite hast Du wohl selbst irgendwo definiert. Wenn ich irgendeine eine Unsinn-URL aufrufe, dann sehe ich erst eine Fehlermeldung und nach ein paar Sekunden wird auf die Startseite umgeleitet. Das ist so nicht das Standardverhalten von PS. Und zuletzt: Würde ich die confirmation.php mal anschauen auf etwaige Umleitungen darin. Und ggf. an den Begin ein Debugstatement in die Datenbank reinschreiben, da sähe man dann, in welchem Zeitpunkt der Ablauf auf den 302 läuft. PrestaShopLogger::addLog("Hier durchlaeuft Claudio gerade einen Debug-Versuch", 1, null); Edited August 22, 2017 by Scully (see edit history) Link to comment Share on other sites More sharing options...
Claudiocool Posted August 22, 2017 Author Share Posted August 22, 2017 Du meinst, die Zeile oben die confirmation.php reinschreiben? Das mit der Weiterleitung hat den Sinn gehabt, dass bei der Shopumstellung vom OSCommerce weg etliche Leite "gegen die Wand" gelaufen sind, weil die beispielsweise Produkte von mir in irgendwelchen Foren verlinkt hatten usw. Ich weiß leider nicht mehr, wo mein ehemaliger Mitarbeiter damals die Pause eingebaut hatte, diese dient zur Info, dass die alten Links nicht mehr gehen. Link to comment Share on other sites More sharing options...
Scully Posted August 22, 2017 Share Posted August 22, 2017 Also, erstmal sofort den ehemaligen Mitarbeiter zitieren! Nein im ernst - ich weiss natürlich auch nicht, wo diese Umleitung herkommt. htaccess wäre immer eine Idee. Oder der 404 Controller eine andere. Und meine Idee wäre, deine confirmation.php mit ein paar Debugs zu ergänzen, wenn man nicht offensichtlich den Grund für die Umleitung findet. Wenn man dieses Statement am Anfang einer function als erstes reinschreibt, weiss man wenigstens, dass der Code an dieser Stelle auch ausgeführt wurde. Link to comment Share on other sites More sharing options...
Claudiocool Posted August 22, 2017 Author Share Posted August 22, 2017 Den ehemaligen Mitarbeiter kann ich vergessen.... 1. Rede ich mit dem in diesem Leben kein Wort mehr 2. Würde sowieso nur kommen, dass er sich nicht mehr erinnert, was da gemacht wurde Darum hätte mich da interessiert, wo man da zu suchen anfängt. An die HTACCES glaube ich jetzt eher mal nicht, Das Modul wurde heute früh von mir installiert, allerdings fürchte ich, dass der fehler ausserhalb des Modules zu finden ist. Okay, nochmal zurück zu der Datei: Ich füge die Zeile oben ein und dann kriege ich irgendwo ein log, in dem ich sehe, was da passiert? Wo finde ich dieses Log dann? Im Verzeichnis des Moduls? Link to comment Share on other sites More sharing options...
Claudiocool Posted August 22, 2017 Author Share Posted August 22, 2017 (edited) Aus der Error-Log hab ich noch was geholt.... (Die Links sind natürlich leer, weil es wieder gelöschte Testbestellungen waren) PHP Warning: Illegal offset type in isset or empty in ...../modules/sofortbanking/sofortbanking.php on line 474, referer: https://www.cdfgroup.de/onlineshop/de/bestellungsverlauf PHP Warning: Illegal offset type in isset or empty in ...../modules/sofortbanking/sofortbanking.php on line 474, referer: https://www.cdfgroup.de/onlineshop/de/order-detail?id_order=144 Das ist diese Zeile 474 (original von Sofortüberweisung):$this->context->smarty->assign('sofort_link', (isset($links[$this->isSupportedLang()]) Edited August 22, 2017 by Claudiocool (see edit history) Link to comment Share on other sites More sharing options...
Scully Posted August 22, 2017 Share Posted August 22, 2017 Claudio, Du solltest die Fehlermeldung(en) erstmal als Code formatieren. Dieser Button <> ist dein Freund hierfür. Das Log mit der Anweisung die ich oben gepostet habe findest Du im Backoffice -> Erweiterte Einstellungen -> Log-Datein. Link to comment Share on other sites More sharing options...
Scully Posted August 22, 2017 Share Posted August 22, 2017 (edited) Und dann noch zur Fehlermeldung: isSupportedLang Ist offenbar eine Methode, welche das Modul selbst bereitstellt. Das ist dumm, denn alle für Sprachen relevanten Methoden würde PrestaShop zur Verfügung stellen. Das alleine wäre aber noch nicht der wirkliche Fehler. Die Meldung Illegal offset type in isset besagt, dass die Funktion isset nicht mit einem Array kompatibel ist. Daraus lernen wir, dass die Methode ein Array übergibt. Isset kann aber nur Variabeln, jedoch keine Array vertragen. Also, unverträgliche Datentypen im Modul. Möglich, dass man das Modul nicht korrekt auf Multisprachen getestet hat. Jedenfalls ist der Code syntaktisch falsch. assign('sofort_link', (isset($links[$this->isSupportedLang()]) Farbig markiert: das Array, welches mit [ geöffnet und mit ] geschlossen wird. Edited August 22, 2017 by Scully (see edit history) Link to comment Share on other sites More sharing options...
DRMasterChief Posted August 22, 2017 Share Posted August 22, 2017 schon mal Sofort dazu kontaktiert? Die sollten dazu doch genauere Infos geben können, ist ja "erstmal" denen Ihre Baustelle. 1 Link to comment Share on other sites More sharing options...
Claudiocool Posted August 22, 2017 Author Share Posted August 22, 2017 Ich muss das mal zuerstmal von einem anderen Rechner testen, bzw., mal jemand bitten, es im Testmodus zu probieren, eventuell sind da noch Leichen des alten Modules dringewesen... Link to comment Share on other sites More sharing options...
Scully Posted August 22, 2017 Share Posted August 22, 2017 Claudio, ich mache gerne eine "Test"-Bestellung, Du kannst mir diese notfalls auch testhalber real zustellen ;-) Link to comment Share on other sites More sharing options...
Whiley Posted August 23, 2017 Share Posted August 23, 2017 PHP Warning: Illegal offset type in isset or empty in ...../modules/sofortbanking/sofortbanking.php on line 474, referer: Claudio, das hatten wir doch schon mehrfach hier im Forum. (Shopversion passt nicht zur Modulversion) Du gehst so vor: - momentanen Zustand sichern - deaktivieren/deinstallieren des Sofortbanking-Moduls und anschliessend den Modulordner löschen.(FTP) - bei Sofortüberweisung löscht du das Gateway Projekt und legst ein Classic-Projekt an. - dann installierst du das Sofortbanking-Modul, daß ich dir angehängt habe und gibst alle Daten korrekt neu ein (durch den Wechsel vom Gateway zum Classic Projekt hast du auch eine andere Projekt-ID) sofortbanking.zip Ich habe erst gestern bei einem neuen Shop den wir gerade zusammenstricken das genau so gemacht(nachdem wir auch zunächst die o.a. Warnung hatten) - funktioniert einwandfrei. Grüsse Whiley 1 Link to comment Share on other sites More sharing options...
Claudiocool Posted August 23, 2017 Author Share Posted August 23, 2017 Hi Whiley, das werde ich dann im Lauf des Tages mal machen, vorher noch eine Frage dazu: Die momentan installierte Version wurde im Modulbereich automatisch installiert, d.h., es wurde rumgemeckert, dass ein Update für das Modul existiert, woraufhin ich dann den Button geklickt hatte und das Unglück seinen Lauf nahm. Vorher war, m. W. die 2.5.7, jetzt war es die 3.0.0 Das heisst also, es wird eine inkompatible Version im offiziellen Download geführt? Grüße und danke, Claudio Link to comment Share on other sites More sharing options...
Whiley Posted August 23, 2017 Share Posted August 23, 2017 Das heisst also, es wird eine inkompatible Version im offiziellen Download geführt? Wenn du so willst - ja, aber das hängt in dem Fall halt von deiner verwendeten Shopversion ab! Als das 3.0er Modul herauskam gab es ja jede Menge Topics dazu. Im git wird immer noch eine 2.5er Version zum Download angeboten. https://github.com/PrestaShop/sofortbanking Dort hole ich mir das Modul immer her. Wenn du zuvor eine lauffähige Konstellation hattest kannst du möglicherweise auf ein Backup zurückgreifen, vielleicht besteht ja dann auch dein Classic-Project bei Sofortüberweisung noch. Grüsse Whiley Link to comment Share on other sites More sharing options...
Claudiocool Posted August 27, 2017 Author Share Posted August 27, 2017 (edited) okay, endlich mal Zeit gefunden, das Dingens zu installieren Jetzt geht alles wieder, und ich hab auch gleich mal entdeckt, wie es sein konnte, dass der Kunde (das war der eigentliche Grund für meine Spielerei mit dem Modul) nicht zum Shop zurückkommt und die eigentliche Bestellung ins System gesetzt wurde: In den Einstellungen bei Sofort (also nicht hier im Presta sondern im Dashboard des Anbieters) unbedingt die automatische Rückleitung aktivieren, sonst muss der Kunde den Zurück-Button anklicken, und wenn er das vergisst, ist die Bestellung im Nirvana Edited August 27, 2017 by Claudiocool (see edit history) Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now