NSN Posted January 10, 2019 Share Posted January 10, 2019 (edited) Ich habe gestern im Testshop (1.6.1.4) das Error-Reporting eingeschaltet um zu sehen ob irgendwelche Meldungen kommen. Komischerweise kann ich seit dem nicht mehr auf die Modulseite zugreifen und bekomme folgenden Fehler angezeigt (egal ob mit oder ohne Error-Reporting). [PrestaShop] Fatal error in module file :/.../classes/module/Module.php(1361) : eval()'d code: syntax error, unexpected 'use' (T_USE) Es wurden, außer dem aktivieren und deaktivieren des Error-Reporting keine anderen Änderungen gemacht. Edited January 11, 2019 by NSN (see edit history) Link to comment Share on other sites More sharing options...
rictools Posted January 11, 2019 Share Posted January 11, 2019 Ich würde erst mal alle Caches löschen, dann überprüfen, ob dir beim Wiederdeaktivieren des Error Reporting kein Tippfehler unterlaufen ist, dann ob die Module.php nicht versehentlich bearbeitet wurde, evtl. beide Dateien aus Sicherung oder Installations-ZIP ersetzen. Link to comment Share on other sites More sharing options...
NSN Posted January 11, 2019 Author Share Posted January 11, 2019 Ich weis echt nicht worans liegen kann. Ich habe alle caches gelöscht (vermute mal alle) und auch das Überschreiben der einzelnen Dateien aus der Sicherung hat nichts gebracht. Sogar das einspielen eines backups hat den Fehler nicht behoben was ich noch weniger verstehe. Wird wohl besser sein eine neue Kopie des Live-Shops zu erstellen als Zeit in die Reparatur des Test-Shops zu stecken. Link to comment Share on other sites More sharing options...
NSN Posted January 11, 2019 Author Share Posted January 11, 2019 So, hab jetzt doch noch mal einen Versuch gestartet. Eventuell ist beim einspielen des Backups was schief gelaufen denn nachdem ich das Verzeichnis geleert habe und das Backup nochmals eingespielt habe läufts wieder. Link to comment Share on other sites More sharing options...
eleazar Posted January 11, 2019 Share Posted January 11, 2019 Ich weiß nicht, ob es auch damit zusammenhängt, dass in dieser Zeile seit PrestasHop 1.5 ein Schreibfehler ist, genauer gesagt ein überflüssiges Tabulatorzeichen von '.$file: if (eval('if (false){ '.$file."\n".' }') !== false) { Ich habe da mal einen roten Strich durch gemacht. Möglicherweise kann das unter bestimmten Bedingungen einen Fehler auslösen. Dieser - wie es ihm Code heißt: - "Trick" mit der PHP-Funktion eval wurde erst ab PrestaShop 1.7 abgestellt. Das bringt mich aber auf eine andere Idee. Dieser Code soll nämlich einen Fehler verhindern, falls ein Modul angefordert wird, dass es gar nicht gibt. Die einfachste Erklärung scheint mir deshalb hier zu sein, dass bei Aufruf der Modulseite ein Modul geladen werden soll, das gar nicht oder nicht mehr existiert. Link to comment Share on other sites More sharing options...
NSN Posted January 11, 2019 Author Share Posted January 11, 2019 Diese Stelle die du rot markiert ist ist mir auch aufgefallen und kam mir seltsam vor. Das der Fehler durch den Versuch ein Modul zu laden welches nicht mehr existiert hervorgerufen wurde könnte durchaus eine Erklärung sein. Wie gesagt, es war ja der Test-Shop und da wurden schon viele Module ausprobiert und wieder verabschiedet. 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