WebsiteBaker Support (2.13.x) > Hilfe & Support (deutsch)
Page Cloner 1.0.7 uncatched exception
Siggit:
Habe den Code in Zeile 80 so abgeändert:
--- Code: ---// Setup template object
use vendor\phplib\Template;
if(!class_exists('Template')){ require(WB_PATH.'/include/phplib/template.inc');}
$template = new Template(WB_PATH.'/modules/pagecloner');
$template->set_file('page', 'template.html');
$template->set_block('page', 'main_block', 'main');
--- End code ---
Hatte damit leider auch keinen Erfolg.
hgs:
Ich hab mir mal die Version 0.66 vorgenommen und eine 0.67 daraus gemacht und erfolgreich mit WB 2.13.3 r166 mit php8.1 durch getestet.
Ist als Anhang dran gehängt.
Viel Spaß beim testen.
Was habe ich geändert:
An zwei Stellen musste der Weg zum Template eingefügt werden
--- Code: ---if (!class_exists('Template')){ require(WB_PATH.'/include/phplib/template.inc');}
--- End code ---
wurde direkt nach
--- Code: ---// Setup template object
--- End code ---
eingefügt.
Einmal in der tool.php und einmal in der tool_clone.php
und dann noch ein bisschen Coding Standarts.
aus:
--- Code: ---get_user_id()
--- End code ---
wurde
--- Code: ---getUserId()
--- End code ---
und aus
--- Code: ---get_group_id()
--- End code ---
wurde
--- Code: ---getGroupId()
--- End code ---
in einigen Dateien
Gefunden durch den tollen ErrorLogger, der seines gleichen sucht.
Siggit:
Super Arbeit! (Y) (Y) (Y)
Es funktioniert, auch mit mehreren Abschnitten. Habe es mit wysiwyg und einem Minislider getestet.
In meiner error.log im var Verzeichnis habe ich keine Fehler angezeigt bekommen und bei Ionos mit einer Sever error.log ist das so ein Thema für sich, musste die bisher immer über den Support aktivieren lassen.
Danke nochmal :-)
masju:
Danke für die Arbeit (Y)!
Habe das Modul gerade installiert (2.12.2 R379 unter PHP 7.4), leider eine Fehlermeldung:
--- Code: ---There was an uncatched exception
Call to undefined method admin::getGroupId()
in line (122) of (/modules/pagecloner/tool.php):
--- End code ---
Verschwindet die beim Update auf die aktuelle WB-Version?
Viele Grüße
masju
sternchen8875:
--- Quote from: masju on July 25, 2023, 08:58:22 AM ---Habe das Modul gerade installiert (2.12.2 R379 unter PHP 7.4), leider eine Fehlermeldung:
--- Code: ---There was an uncatched exception
Call to undefined method admin::getGroupId()
in line (122) of (/modules/pagecloner/tool.php):
--- End code ---
Verschwindet die beim Update auf die aktuelle WB-Version?
--- End quote ---
Das alte Modul (Vers 0.66) wurde repariert und das natürlich für die aktuellen WB-Versionen, weil wir eben davon ausgehen, das man auch aktuelle WB-Versionen benutzt, schon allein, weil der Provider das fordert durch hochsetzen der PHP-Version.
die angemahnte Funktion getGroupId() und später auch getUserId() gab ist in dieser über 5 Jahre alten WB-Version noch nicht. Sie ersetzten die alten Funktionen get_group_id() bzw get_user_id(), deren Namen im Zuge des Umstieges auf OOP auf die aktuellen Coding-Standards angepasst wurde. Dort heißt es z.b. grob und einfach zusammengefaßt:
--- Quote ---Funktionen
Funktionsnamen sind beschreibend, erster Buchstabe klein (Präfix zählt nicht), jedes "neue" Wort groß
Vor die Beschreibung sollte der Paketname gesetzt werden (klein) um Kollisionen mit anderen Funktionsnamen zu vermeiden
Bei der Definition soll der Original K&R Einrückungsstil verwendet werden (siehe Bsp.; ich persönlich bevorzuge aber ein einfaches Leerzeichen vor der öffnenden geschweiften Klammer)
Bei Aufrufen kein Leerzeichen nach Funktionsnamen, der öffnenden Runden Klammer und dem letzten Parameter
Leerzeichen nach Kommas zur Parametertrennung und der schließenden runden Klammer
--- End quote ---
Deine gepostete Fehlermeldung besagt, das diese Funktion nicht gefunden wurde, weil es sie (noch) nicht gibt in dieser WB-Version. Wird in den aktuellen WB-Versionen solch alte Funktion aufgerufen, wird eine Info-Meldung gesetzt und intern die neue Funktion verwendet. Diese Methode läßt Freiraum, um es zu reparieren. Ab WB 3 wird es dann keine Info mehr geben und die Reaktion wird an PHP angepasst, wo es dann einen Scriptabbruch geben wird.
Willst du unbedingt bei deiner alten WB-Version bleiben, brauchst du auch die alte Modul-Version dazu. Der entsprechende Download-Link wurde oben gepostet. Da es keine Modul-Downgrades gibt in WB, muß die neueste Modul-Version 0.67 erst deinstalliert werden, um danach die alte Version 0.66 zu installieren
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version