custom8 Posted November 14, 2022 Share Posted November 14, 2022 Hallo zusammen, leider mein Kunde (und Vater) die ganzen Mails zur Abschaltung von PHP 7.4 nicht gelesen / ignoriert und genau heute hat sein Hoster "Host Europe" auf PHP 8.1 umgestellt. Seitdem kommt er ins Backend nicht mehr rein aufgrund eines unbekannten Fehlers.http://bavariafishing.com/ Ich habe den DEV-Mode in der Datei "defines.inc.php" aktiviert und erhalte nun: Fatal error: Declaration of Doctrine\DBAL\Driver\PDOConnection::query() must be compatible with PDO::query(string $query, ?int $fetchMode = null, mixed ...$fetchModeArgs): PDOStatement|false in /is/htdocs/wp13373872_1Z202QGY87/www/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php on line 70 Via Google-Suche fand ich nun folgende "Lösungen" - Zurück auf PHP 7: nicht möglich, da Host Europe nur noch PHP 8.0 und 8.1 kann. 7.X wird nicht mehr angeboten bei den webhosting-Produkten (kein eigener Server). - Update auf neues Prestashop + alle Module aktualisieren: nicht möglich, da der Zugang zum Backend ja nicht klappt. nun also meine Frage: Was kann ich tun? Wie soll ich denn Prestashop updaten ohne das Backend? Funktioniert prestashop überhaupt bereits mit PHP 8? Hab dazu VIELE Suchergebnisse bekommen, dass Prestashop da immer hinterher hängt und dann klatschen sie schnell eine neue Version hin. Und auch die Anbieter von Modulen (Dritthersteller) haben dadurch wenig Zeit Ihre Module zu aktualisieren. Link to comment Share on other sites More sharing options...
ComGrafPL Posted November 14, 2022 Share Posted November 14, 2022 Gibt es Möglichkeiten, den Hosting-Provider zu wechseln? Der tatsächliche Hosting-Support kann Ihnen nicht weiterhelfen? Die meisten Anbieter haben eine kostenlose / kostenpflichtige separate PHP-Option. Versuchen:https://stackoverflow.com/questions/64726900/declaration-of-om-dbquerystring-statement-must-be-compatible-with-pdoquer Link to comment Share on other sites More sharing options...
custom8 Posted November 14, 2022 Author Share Posted November 14, 2022 Danke. Leider nicht so ohne weiteres. Der Wechsel wäre mit einem riesen Aufwand verbunden (Umzug aller Domains, Umzug von rund 100 E-Mail-Postfächern, Anpassen der ganzen Konfiguration, Umzug der Datenbank). Die Lösung aus dem Link habe ich bereits gefunden, aber da es ein hosted Webspace ist habe ich nur FTP-Zugriff auf das Root-Verzeichnis der Webseite, ich kann keine Befehle (wie "composer update") ausführen. Link to comment Share on other sites More sharing options...
JBW Posted November 15, 2022 Share Posted November 15, 2022 Die schnellste Variante wäre den Hosting Provider (mit längerfristigen PHP 7.4 support) zu wechseln. Alternativ kann ich mir nur vorstellen den Shop lokal oder temporär auf einem anderen Provider zu installieren, dort auf die neuste Version zu upgraden (8.0, somit auch nicht stabil und Anpassungen an Modulen und Theme verraussichtlich erforderlich!) und dann zurück auf Hosteurope kopieren. Ziemlich aufwändig und fehlerbehaftet... Eure Version jetzt zu modifizieren um die irgendwie auf PHP8 zum laufen zu bringen denke ich ist zu risikoreich und aufwändig, es wird mit der einen Fehlmeldung nicht erledigt sein - es müsste alles getestet und angepasst werden (inkl. Theme und Module). Link to comment Share on other sites More sharing options...
rictools Posted November 16, 2022 Share Posted November 16, 2022 Eigentlich sollte man erwarten, daß der Provider auf Nachfrage zumindest temporär um ein Upgrade auf Prestashop 8.0 durchzuführen PHP 7.4 noch einmal zur Verfügung stellt zumal der Security Support noch gar nicht abgelaufen ist (zum 28. November). Auf jeden Fall kannst du PHP 8.0 statt 8.1 wählen, vielleicht funktioniert damit ja mehr. Bei einem Umzug des Shops (Multishops mit mehreren Domains?) zu einem anderen Provider könnte es möglich sein, E-Mail-Konten und ggf. nicht mit Prestashop verbundene Domains bei HostEurope zu belassen. Link to comment Share on other sites More sharing options...
custom8 Posted November 17, 2022 Author Share Posted November 17, 2022 Hi, ich danke euch. 1. eine Umstellung auf PHP 8.0 hat nicht geklappt 2. eine Umstellung auf PHP 7.4 ist "auf keinen Fall" möglich, laut dem Support von Host Europe. nicht einmal temporär, sodass ich noch einmal kurz ins Backend komme 3. ich habe den Umzug zu Ionos versucht. Jedoch können wir die Domain nicht mitnehmen (dauert zu lang, es müssten alle Mailkonten migriert werden etc.) AN SICH ist das nicht schlimm, aber es gibt eine Haufen Folgeprobleme. a.) Ich habe alle Daten von Hosteurope per FTP runtergeladen und auch die Datenbank exportiert. b.) Danach habe ich die Daten und Datenbank bei Ionos (auf einem Webspace mit PHP 7.4) wiederhergestellt. c.) In der Datei "app\config\parameters.php" habe ich natürlich die Daten vom neuen Hoster eingegeben (Datenbankzugang etc.). --> Danach konnte ich die Webseite in das Backend noch nicht aufrufen, weil er mich immer wieder zur alten Domain umgeleitet hat. Zur info: ich bin von bavariafishing.com zu bavaria-fishing.com umgezogen. Also habe ich in der Datenbank die Shop-URL und SSL-URL angepasst. d.) soweit so gut, ich kam wieder ins Backend. aber es gab diverse Probleme, manche Menüpunkte haben nicht geladen, das Layout der Webseite selbst ist total "zerstört". e.) Also habe ich im Backup der Datenbank (.sql-Datei) ALLE Vorkommnisse der alten Domain durch die neue Domain ersetzt. Ich war schockiert, dass es über 25.000 Datensätze gibt, in denen die alte Domain drin steht. D.h. Bilder haben nicht auf eine VARIABLE verwiesen (z.B. %shopurl%/images/image.png) sondern alle Pfaden haben die Domain fest drin stehen gehabt (z.B. bavariafishing.com/images/image.png). Danach habe ich die Datenbank gelöscht und durch meine angepasste Datensicherung ersetzt (also mit neuer Domain). f.) danach habe ich das selbe mit den Website-Daten gemacht. Ich habe in allen Dateien "bavariafishing.com" durch "bavaria-fishing.com" ersetzt und die Daten per FTP hochgeladen. Dennoch bleiben dutzende Fehler. Die Console auf https://bavaria-fishing.com/ zeigt z.B. an, dass Bootstrap jQuery benötigt. wieso jedoch jQuery nicht mehr gefunden wird kann ich mir nicht erklären, die Ordnerstuktur wurde nicht verändert, als ich sie auf den neuen FTP-Server geladen habe. Die jQuery-Dateien existieren natürlich. Der DEV-Mode ist an, das Frontend zeigt aber keine Fehler (nur in der Console in den DEV Tools). Das Backend ist noch schlimmer dran, siehe angefügtes Bild (ja, ich weiß, dass man die Admin-URL sieht^^) Aber wieso? ich habe vorher PHP 7.4 gehabt und jetzt wieder, alle Dateien wurden per FTP übertragen. Alle Vorkommen der alten Domain wurden in Daten und Datenbank ersetzt. Website- und Browsercache wurden geleert, ich hab die "Benutzerfreundlichen URLs" deaktiviert und dann wieder aktiviert. Link to comment Share on other sites More sharing options...
JBW Posted November 17, 2022 Share Posted November 17, 2022 Nach Server Umzug und/oder PHP Versions Wechsel musst du /var/cache löschen. Unter Leistung würde ich (temporär) die Komprimierung von CSS und JS ausschalten, dann sieht du warum und was fehlt/nicht geladen wird. 14 minutes ago, custom8 said: Ich war schockiert, dass es über 25.000 Datensätze gibt, in denen die alte Domain drin steht In welcher Tabelle? Ist mit so im Standard noch nicht untergekommen, evtl. in Modul wie Elementor? Link to comment Share on other sites More sharing options...
custom8 Posted November 17, 2022 Author Share Posted November 17, 2022 (edited) var/cache hatte ich bereits manuell gelöscht, macht aber keinen Unterschied. das mit CSS und JS versuche ich, aber an sich weiß ich den Fehler ja: "bootstrap needs jquery"https://stackoverflow.com/questions/22658015/bootstrap-throws-uncaught-error-bootstraps-javascript-requires-jquery jedoch ging es ja vor dem Umzug, bzw. vor der Umstellung auf PHP 8, ich gehe also davon aus, dass die Quellcode-Dateien passen und ich nichts daran anpassen muss. Du hast Recht, die Datensätze waren ausschließlich von Drittanbietermodulen und in PS_Connections. Das dürfte also nicht weiter stören. Nun gehts eig. erstmal nur um den Fehler mit jQuery, also rauszufinden, wieso er das angeblich nicht finden kann. Denn klar, ohne jQuery geht bootstrap nicht (was die Fehldarstellung erklärt) und auch viele Javascripts laufen dadurch nicht. Edited November 17, 2022 by custom8 (see edit history) Link to comment Share on other sites More sharing options...
JBW Posted November 17, 2022 Share Posted November 17, 2022 1 hour ago, custom8 said: Nun gehts eig. erstmal nur um den Fehler mit jQuery, also rauszufinden, wieso er das angeblich nicht finden kann. Denn klar, ohne jQuery geht bootstrap nicht (was die Fehldarstellung erklärt) und auch viele Javascripts laufen dadurch nicht. Wie gesagt stelle mal die CSS und JS komprimierung/verkettung aus, dann siehst du welche Dateien geladen werden bzw. nicht. Link to comment Share on other sites More sharing options...
custom8 Posted November 17, 2022 Author Share Posted November 17, 2022 ja, hab alle 3 CCC-Einstellungen deaktiviert, den Cache gelöscht und die Seite neu geladen: Die Ausgabe in der Konsole sieht genau aus wie vorher, Frontend siehe BF2.png, Backend siehe BFBackend.png jQuery nicht gefunden, weshalb er auch das $-Literal bzw. $-Prefix nicht kennt, BF3.png. Was ich daran aber nicht erkenne: welche Dateien (nicht) geladen wurden und vor Allem: Das Wieso. Link to comment Share on other sites More sharing options...
custom8 Posted November 17, 2022 Author Share Posted November 17, 2022 (edited) Hab eine Lösung: Hab einfach die Dateien von presta 1.7.8.7 runtergeladen und über meine Installation (1.7.8.0) drüber kopiert. Front- und Backend funktionieren nun wie gewünscht. Danke für deine Hilfe Edited November 17, 2022 by custom8 (see edit history) Link to comment Share on other sites More sharing options...
JBW Posted November 17, 2022 Share Posted November 17, 2022 Hätte jetzt auch gesagt da ist was beim kopieren der Daten falsch gelaufen da in core.js ein Syntax Fehler war. Seite sieht jetzt gut aus. 1 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