Hallo Zusammen, ich bekomme beim Überladen des Captchas einen Fehler: "Class 'CustomCaptcha_parent' not found in .../Overloads/Captcha/CustomCaptcha.inc.php:21". Ich bin mit meinem Latein am Ende eventuell hat jemand eine Idee. Gemäß Doku: https://developers.gambio.de/tutori...ern-bestehender-php-klassen#Class-Overloading Unterverzeichnis mit dem Namen der zur überladenen Klasse -- OK Namenskonvention {BeliebigerKlassenname}.inc.php -- OK Wird durch Mainfactory im Shop erzeugt -- OK Kann überladen werden -- OK (Liegt in "system/classes/security" gem. Doku kann "system/classes" überladen werden) Überladen eines Namespace -- OK (Nicht vorhanden) Caches geleert -- OK Code: PHP: class CustomCaptcha extends CustomCaptcha_parent{ protected function _validateCaptchaTypeVvcode(array $requestData, $isAjaxRequest) { ... }} Gambio Version 4.4.0.3
Ergänzung: Der Fehler tritt nur beim Aufruf des CallbackService auf, nicht aber beim Aufruf des Kontaktformulars. Stack trace: #0 /system/core/MainFactory.inc.php(252): include_once() #1 /system/core/MainAutoloader.inc.php(94): MainFactory::load_class('CustomCaptcha...') #2 [internal function]: MainAutoloader->load('CustomCaptcha...') #3 [internal function]: spl_autoload_call('CustomCaptcha...') #4 /GXMainComponents/Application.inc.php(589): session_start() #5 /GXMainComponents/Application.inc.php(244): Gambio\GX\Application->startSession() #6 /GXMainComponents/ApplicationMain.inc.php(53): Gambio\GX\Application->setUpEnvironment() #7 /includes/application_top_main.php(15): Gambio\GX\ApplicationMain-
@WinHelp GmbH Wo genau liegt dein Modul? Wen du es über GXModules hast, muss der Ordner /overloads/ immer entweder in einem Ordner /shop/ oder /admin/ liegen. Also der Pfad zur Klasse müsste /GXModules/MeineFirma/MeinModul/Shop/overloads/Klassenname/MyKlassennameOverload.inc.php lauten und in der Datei müsste die Klasse dann MyKlassennameOverload extends MyKlassennameOverload_parent lauten und der ModulCache und Cache für die Seitenausgabe muss geleert werden, damit der Shop die Klassen kennt.
@Till (Gambio) Die Datei liegt unter /GXModules/WinHelp/ModulName/Shop/Overloads/Captcha. Ist ja nicht unser erstes und einziges Modul ;-) Der Dateiname kann auch nicht das Problem sein, denn dieser folgt der üblichen Konvention. Die Klasse ist aus meiner Sicht auch korrekt deklariert. Caches sind geleert (Mehrfach und auch der ModulCache)