Uncaught cException: init $belang is not set

Fragen zur Installation von CONTENIDO 4.10? Probleme bei der Konfiguration? Hinweise oder Fragen zur Entwicklung des Systemes oder zur Sicherheit?
Antworten
swo123
Beiträge: 6
Registriert: So 7. Apr 2019, 09:10
Kontaktdaten:

Uncaught cException: init $belang is not set

Beitrag von swo123 » So 7. Apr 2019, 09:21

Hallo,

ich kenne mich mit Contenido nicht aus, habe aber für einen meinen Kunden auf Contenido 4.10.0 aktualisiert (habe mir dazu heute nen Snapshot vom Github gezogen). Eigentlich läuft alles, aber wenn ich einen Artikel anschauen möchte, erscheint folgende Fehlermeldung:

Fatal error: Uncaught cException: init $belang is not set in /usr/home/user1/wwwroot/htdocs.bla/contenido/classes/class.i18n.php:110 Stack trace: #0 /usr/home/user1/wwwroot/htdocs.bla/contenido/classes/class.i18n.php(86): cI18n::translate('The given clien...', '') #1 /usr/home/user1/wwwroot/htdocs.bla/contenido/includes/functions.i18n.php(55): cI18n::__('The given clien...', '') #2 /usr/home/user1/wwwroot/htdocs.bla/contenido/external/backendedit/front_content.php(27): i18n('The given clien...', '') #3 {main} thrown in /usr/home/user1/wwwroot/htdocs.bla/contenido/classes/class.i18n.php on line 110

Hat jemand ne Idee wie ich das fixen kann? Wo kann ich das Locale einstellen in der Config?

Danke und beste Grüße
Sebastian

xmurrix
Beiträge: 3143
Registriert: Do 21. Okt 2004, 11:08
Wohnort: Augsburg
Kontaktdaten:

Re: Uncaught cException: init $belang is not set

Beitrag von xmurrix » Mo 8. Apr 2019, 08:59

Hallo swo123,

willkommen im CONTENIDO Forum.

Der Fehler, den du hier beschreibst, ist ein Folgefehler eines anderen Fehlers.

Beim Bearbeiten eines Artikels kann der Frontendpfad des Mandanten nicht ausgelesen werden, daher wird eine Fehlermeldung erzeugt.

Die Variable $belang wird im Backend, nach dem Login gesetzt und in der Session gespeichert. Daher sollte es nach dem Login überall im Backend verfügbar sein.

Zum Fehler "Frontend-Pfad":
Prüfe also nach, ob folgende Dateien existieren und deren Inhalte korrekt sind oder zumindest korrekt zu sein scheinen:
- cms/data/config/production/config.php
- data/config/production/config.clients.php
Eventuell lief die Installation nicht sauber durch oder das CMS hatte keine Schreibrechte auf gewisse Verzeichnisse um die Konfiguratonsdsateien darin zu generieren.
Diese Informationen sollten alle in der data/logs/errorlog.txt zu finden sein.

Zum Fehler "$belang":
Prüfe auch nach, ob bei Editieren des Artikels etwa das Session-Cookie mit einem anderen Pfad (z. B. '/cms/') ausgegeben wird, als in anderen Bereichen des Backends. Das kann die Ursache für das Fehlen der Variable $belang sein. Falls das so ist, lässt sich das vermutlich mit dem Setzen des Cookiepfades für das Frontend lösen, siehe:
viewtopic.php?t=43499#p179678
Allerdings sollte das nicht möglich sein, d. h. bei Editieren eines Artikels im Backend sollte die Backend-Session initialisiert werden, somit auch die Variable $belang, die beim Login im Backend gesetzt wurde.

Übrigens:
...habe mir dazu heute nen Snapshot vom Github gezogen...
Das offizielle Git-Repository von CONTENIDO lautet:
http://git.contenido.org/

Nachtrag:
Der andere Post mit dem gleichen Thema wurde gelöscht.

Gruß
xmurrix
CONTENIDO Downloads: CONTENIDO 4.10.1
CONTENIDO Links: Dokumentationsportal, FAQ, API-Dokumentation
CONTENIDO @ Github: CONTENIDO 4.10 - Mit einem Entwicklungszweig (develop-branch), das viele Verbesserungen/Optimierungen erhalten hat und auf Stabilität und Kompatibilität mit PHP 8.0 bis 8.2 getrimmt wurde.

swo123
Beiträge: 6
Registriert: So 7. Apr 2019, 09:10
Kontaktdaten:

Re: Uncaught cException: init $belang is not set

Beitrag von swo123 » Mo 8. Apr 2019, 20:39

Hi,

vielen Dank für die Hilfe. Also aus meiner Sicht sind die beiden Dateien korrekt angelegt:

- cms/data/config/production/config.php
- data/config/production/config.clients.php

Den Link zum Setzen des Cookie-Pfades kann ich nicht aufrufen, denn er sagt, ich hätte keine Berechtigung auf das Forum zuzugreifen. Kann mir das vielleicht jemand schicken oder meine Berechtigungen ändern?

Danke und beste Grüße
Sebastian

xmurrix
Beiträge: 3143
Registriert: Do 21. Okt 2004, 11:08
Wohnort: Augsburg
Kontaktdaten:

Re: Uncaught cException: init $belang is not set

Beitrag von xmurrix » Mo 8. Apr 2019, 21:59

swo123 hat geschrieben:
Mo 8. Apr 2019, 20:39
...Den Link zum Setzen des Cookie-Pfades kann ich nicht aufrufen, denn er sagt, ich hätte keine Berechtigung auf das Forum zuzugreifen...
Sorry, das ist mein Fehler, ich habe nicht daran gedacht, dass es sich dabei um einen geschlossenen Bereich handelt.

Das Setzen des Pfades für das Cookie des Frontends kann man auch unter folgendem Beitrag im unteren Drittel sehen, siehe $cfg['cookie']['path']:
viewtopic.php?t=43484

Grüße
xmurrix
CONTENIDO Downloads: CONTENIDO 4.10.1
CONTENIDO Links: Dokumentationsportal, FAQ, API-Dokumentation
CONTENIDO @ Github: CONTENIDO 4.10 - Mit einem Entwicklungszweig (develop-branch), das viele Verbesserungen/Optimierungen erhalten hat und auf Stabilität und Kompatibilität mit PHP 8.0 bis 8.2 getrimmt wurde.

swo123
Beiträge: 6
Registriert: So 7. Apr 2019, 09:10
Kontaktdaten:

Re: Uncaught cException: init $belang is not set

Beitrag von swo123 » Di 9. Apr 2019, 23:22

Hi,

vielen Dank aber es geht immer noch nicht. Fehlermeldung bleibt bestehen. Kann ich die $belang irgendwo im Code fest reinschreiben?

Ebenso kommt jetzt beim Aufrufen der Seite folgender Fehler:

Fatal error: Uncaught cInvalidArgumentException: The file cmscache/code/1.1.1.php could not be accessed because it does not exist. in /usr/home/user1/wwwroot/htdocs.domain1/contenido/classes/class.filehandler.php:75 Stack trace: #0 /usr/home/user1/wwwroot/htdocs.domain1/contenido/includes/frontend/include.front_content.php(546): cFileHandler::read('cmscache/code/1...') #1 /usr/home/user1/wwwroot/htdocs.domain1/cms/front_content.php(57): include('/usr/home/kaiin...') #2 {main} thrown in /usr/home/user1/wwwroot/htdocs.domain1/contenido/classes/class.filehandler.php on line 75

Ist das ein bekanntes Problem? Mit dem Cookie-Pfad konnte ich leider nichts erreichen - ich habe alles versucht: "/cms/, "/", "/contenido/", nix ging. Hat jemand noch weitere Ideen?

Danke und beste Grüße
Sebastian

xmurrix
Beiträge: 3143
Registriert: Do 21. Okt 2004, 11:08
Wohnort: Augsburg
Kontaktdaten:

Re: Uncaught cException: init $belang is not set

Beitrag von xmurrix » Mi 10. Apr 2019, 07:53

Guten Morgen,

das Setzen der $belang wird vermutlich nicht helfen, mir ist in der Fehlermeldung folgende Zeile aufgefallen:

Code: Alles auswählen

Fatal error: Uncaught cInvalidArgumentException: The file cmscache/code/1.1.1.php could not be accessed because it does not exist. in 
Das sollte nicht "...cmscache/code/1.1.1.php" sein sondern sehr wahrscheinlich "...cms/cache/code/1.1.1.php". Ist in der Datei "data/config/production/config.clients.php" etwa der Frontendpfad ohne abschließendem Schrägstrich angegeben?
Das sollte folgendermaßen sein:

Code: Alles auswählen

$cfgClient[1]["path"]["frontend"] = "/usr/home/user1/wwwroot/htdocs.domain1/cms/";
Alle Pfadangaben in der Datei "data/config/production/config.clients.php" müssen mit einem Schrägstrich abschließen.

Grüße
xmurrix
CONTENIDO Downloads: CONTENIDO 4.10.1
CONTENIDO Links: Dokumentationsportal, FAQ, API-Dokumentation
CONTENIDO @ Github: CONTENIDO 4.10 - Mit einem Entwicklungszweig (develop-branch), das viele Verbesserungen/Optimierungen erhalten hat und auf Stabilität und Kompatibilität mit PHP 8.0 bis 8.2 getrimmt wurde.

swo123
Beiträge: 6
Registriert: So 7. Apr 2019, 09:10
Kontaktdaten:

Re: Uncaught cException: init $belang is not set

Beitrag von swo123 » Mi 10. Apr 2019, 21:55

Hi,

vielen vielen Dank, das hat alle meine Probleme gefixt. :-)

Beste Grüße
Sebastian

Antworten