Seite 1 von 1
Installation von 4.6.23 mit PHP5
Verfasst: Mi 27. Feb 2008, 16:21
von LeBon
Nach der Installation von contenido 4.6.23 mit Beispielmodulen und -inhalten auf localhost über das Setup Programm, erscheint im Backend und im Frontend folgende Fehlermeldung.
Code: Alles auswählen
Function cecFrontendCategoryAccess doesn't exist, can't add to chain Contenido.Frontend.CategoryAccess
Meine PHP Version ist 5.2.4 und Apache 1.3.14 auf WinXP
Was ist die Ursache für den Fehler ?
Muss in PHP5 oder Apache, was konfiguriert werden ?
Unter PHP 4.4.7 lief alles tadelos.
Ich habe hier schon im Forum gesucht, aber leider nichts gefunden
Gruss LeBon
Verfasst: Mi 27. Feb 2008, 16:40
von Dodger77
Sind die Dateien:
contenido/includes/plugins/chains/includes/include.chain.frontend.cat_access.php
contenido/includes/plugins/chains/includes/include.chain.frontend.cat_backendaccess.php
auf dem Server vorhanden? Wenn ja, versuchen, diese nochmal hochzuladen.
Verfasst: Mi 27. Feb 2008, 17:55
von LeBon
Die Dateien liegen bei der offiziellen Distro in
contenido/plugins/chains/includes/include.chain.frontend.cat_access.php
und nicht
contenido/includes/plugins/chains/includeinclude.chain.frontend.cat_access.php
Auch ein kopieren an den obigen ort zeigt den gleichen fehler
Kann es vielleicht sein das benanntes Script eine Funktion hat mit der PHP5 nicht klar kommt ?
Gruss Lars
Verfasst: Mi 27. Feb 2008, 21:57
von Dodger77
Oh, da habe ich zu schnell angeschickt. Die Dateien müssen natürlich dort liegen:
contenido/plugins/chains/includes/include.chain.frontend.cat_access.php
contenido/plugins/chains/includes/include.chain.frontend.cat_backendaccess.php
Wie sieht denn die Datei "contenido/plugins/chains/includes/config.plugin.php" aus?
Verfasst: Do 28. Feb 2008, 10:32
von LeBon
Hallo Dodger
Wie gesagt unter PHP 4.4.7 läuft alles. Ich vermute das hinter dem Klassenbaum der hinter der Frontendlogic steckt, es eine Methode gibt, die nicht PHP5 konform ist. Wie gesagt alles unter localhost.
Nochmal eine Überlegung. Es gibt PHP Funktionen, die Web URL als Parameter benutzen können.
Kann man den Eventhandler der die Fehlermeldung mal auschalten, das man evt eine echte Fehlermeldung erhält ?
Hier diese Datei: config.plugin.php
Code: Alles auswählen
<?php
global $_cecRegistry, $cfg;
$cfg['plugins']['frontendlogic'][] = "category";
cInclude("plugins", "chains/includes/include.chain.frontend.cat_backendaccess.php");
cInclude("plugins", "chains/includes/include.chain.frontend.cat_access.php");
$_cecRegistry->addChainFunction("Contenido.Frontend.CategoryAccess", "cecFrontendCategoryAccess");
$_cecRegistry->addChainFunction("Contenido.Frontend.CategoryAccess", "cecFrontendCategoryAccess_Backend");
?>
Gruss Lars
Verfasst: Do 28. Feb 2008, 11:03
von Dodger77
Ich habe es gerade nochmal getestet und versucht, die Fehlerursache nachzustellen. Unter PHP 5.2.5 auf WinXP schaffe ich das nur, wenn die Datei "contenido/plugins/chains/includes/include.chain.frontend.cat_access.php" leer ist.
Die Fehlermeldung kommt daher, dass auf das Vorhandensein der Funktion "cecFrontendCategoryAccess" mittels function_exists() geprüft wird. Warum es dabei Unterschiede zwischen 4.4.7 und 5.2.5 geben sollte, erschließt sich mir nicht.
Verfasst: Do 28. Feb 2008, 11:04
von wosch
LeBon hat geschrieben:Ich vermute das hinter dem Klassenbaum der hinter der Frontendlogic steckt, es eine Methode gibt, die nicht PHP5 konform ist.
Ich habe auf meiner XAMPP (unter XP) auch eine 4.6.23 mit Beispielmandant laufen.
+ Apache 2.2.6
+ MySQL 5.0.45
+ PHP 5.2.4
Da habe ich deine Probleme nicht.
An php 5 alleine dürfte es nicht liegen.
Eventuell im Zusammenspiel mit deiner Apache-Version 1.3.14 ?
Verfasst: Do 28. Feb 2008, 11:48
von LeBon
Hallo Dodger und wosch
Vielen Dank für eure Bemühungen.
Also ich habe das Problem gelöst, indem ich mal es über die PHP Version 5.1 habe laufen lassen
Da läuft alles gut. Das reicht jetzt erstmal
Ich werde die Idee von wosch aufgreifen und mal die Konfigs von PHP5.1 und 5.2 vergleichen.
Wenn ich was rausgekriegt habe, werde ich das hier posten.
Gruss Lars
Verfasst: Do 28. Feb 2008, 12:08
von LeBon
Ich habe mal die php.ini von PHP 5.2 mal durchgesehen und alle Extensions die nicht notwendig sind, auskommentiert. Lediglich gd2 und mysql sind aktiv.
soap, tidy und sonstige Module habe ich weggelassen.
Nun läuft das System auch unter 5.2
Also hat irgendeine Extension das System zerschossen.
und zwar:
Das wars dann..
Gruss Lars