Ergebnis 1 bis 14 von 14

Thema: Immer der selbe Eintrag im Errorlog, was läuft falsch?

  1. #1
    Contao-Fan Avatar von dtptiger
    Registriert seit
    20.06.2009.
    Ort
    Nürnberg
    Beiträge
    819

    Standard Immer der selbe Eintrag im Errorlog, was läuft falsch?

    Hallo,
    seit einiger Zeit wird mein Discquota in kurzer Zeit mit errorlogs im Gigabereich zu überlaufen gebracht.
    Hauptsächlich mit dieser Fehlermeldung:

    Code:
    PHP Warning: Illegal string offset 'value' in /home/website/public_.../system/modules/calendar_extended/classes/EventsExt.php on line 247
    #0 /home/website/public_.../system/modules/calendar_extended/classes/EventsExt.php(247): __error(2, 'Illegal string ...', '/home/website..', 247, Array)
    #1 /home/website/public_.../system/modules/calendar_extended/modules/ModuleCalendar.php(264): Contao\EventsExt->getAllEventsExt(Array, 1504216800, 1506808799, Array)
    #2 /home/website/public_.../system/modules/calendar_extended/modules/ModuleCalendar.php(203): Contao\ModuleCalendar->compileWeeks()
    #3 /home/website/public_.../system/modules/core/modules/Module.php(154): Contao\ModuleCalendar->compile()
    #4 /home/website/public_.../system/modules/calendar_extended/modules/ModuleCalendar.php(124): Contao\Module->generate()
    #5 /home/website/public_.../system/modules/core/library/Contao/Controller.php(310): Contao\ModuleCalendar->generate()
    #6 /home/website/public_.../system/modules/core/pages/PageRegular.php(129): Contao\Controller::getFrontendModule(Object(Contao\ModuleModel), 'left')
    #7 /home/website/public_.../system/modules/core/controllers/FrontendIndex.php(250): Contao\PageRegular->generate(Object(Contao\PageModel), true)
    #8 /home/website/public_.../index.php(20): Contao\FrontendIndex->run()
    #9 {main}
    Wie kann ich das korrigieren, ändern?

    Contao 3.4.5
    calendar_extended 3.2.0 build120

    Es sind viele Kalender, manche mit Ausnahmen, viele mit Wiederholungen, zwei Wochenkalender.
    Mit verschiedenen Ausgabe Templates.

    tango-nordbayern.de

    Gruß
    Achim

  2. #2
    Contao-Fan
    Registriert seit
    16.05.2014.
    Beiträge
    295

    Standard

    Das ist das Contao system\logs Log?
    Das ist nur ein Warning. In dem Fall gib es kein value in $arg = $arrRepeat['value'] trotzdem wird versucht darauf zuzugreifen.
    Ist es immer das selbe oder verschiedene?

    Du könntest das Error logging in Contao deaktivieren (keine tolle Lösung -> Einstellungen, Reiter "Sicherheitseisntellungen") oder die Einstellungen über die Config Datei runtersetzen, damit Warnings nicht geloggt werden (~E_WARNING).

    edit:
    Also so wie ich das sehe könnte das daher kommen, dass du ein Event angelegt (gespeichert) hast, dann Event wiederholen angehakt und durch irgendeinen submitOnChange das ganze "gespeichert" hast.
    Dabei steht bei Intervall oder Wiederholungen nichts. Ein Klick auf Speichern würde meckern, das kann man aber übersehen oder vergessen.
    Damit dürfte mindestens ein Event in der Datenbank bei
    "recurring" eine 1 steht
    bei "repeatEach" nichts.
    Da müsstest du mal suchen.
    Vtl.: Mehrere bearbeiten alle Auswählen und dann "Event wiederholen" und "Intervall" anhaken und speichern, dann müsste es bei entprechenden Events meckern.

    Zumindest falls das der Fehler ist.

    Off topic:
    META-Informationen:
    Datum/Zeit: Kategorie: Milongakalender von Maggie&Wolfgang
    Datum/Zeit: 05.05.2015 (20:30 - 20:29) <----
    Hier ist bspw. auch die Uhrzeit "komisch"?
    Geändert von Znrl (02.05.2015 um 17:08 Uhr)

  3. #3
    Contao-Fan Avatar von dtptiger
    Registriert seit
    20.06.2009.
    Ort
    Nürnberg
    Beiträge
    819

    Standard

    Wow :-)
    Vielen Dank für deine Analyse!!!
    Ist immer der selbe Fehler.
    Kann aber heute nicht mehr so wirklich klar denken - hicks

    Habe deinen Tip mal verfolgt, alle Weiderholungseinträge diese Kalenders scheinen richtig.
    die kruden Zeitangaben "20:30 - 20:29" werden von Contao erzeugt wenn "Endzeit ignorieren" nicht angehakt ist, jedoch die selbe Endzeit eingetragen ist.
    Als wenn "20:30 - 20:30" eingetragen wird, wird beim Speichern daraus "20:30 - 20:29".

    Egal ob die Termine wiederholte Termins sich oder nicht.

    Habe bei einigen Termin jetzt "Endzeit ignorieren" eingetragen und werde das Errorlog verfolgen.

    Gruss und schönen Guten Morgen :-)

    Achim

  4. #4
    Contao-Fan
    Registriert seit
    16.05.2014.
    Beiträge
    295

    Standard

    Das mit der Zeit sollte damit nichts zu tun haben das war mir nur direkt beim ersten Event, das ich angeschaut hab aufgefallen und sollte nichts mir dem Fehler zu tun haben.

    Mit gleich meinst du auch diese Zeile?

    PHP-Code:
    #1 /home/website/public_.../system/modules/calendar_extended/modules/ModuleCalendar.php(264): Contao\EventsExt->getAllEventsExt(Array, 1504216800, 1506808799, Array) 
    Hier werden alle Events im Zeitraum 31.08.2017 bis 30.09.2017 geholt. Im Grunde würde ich davon ausgehen, dass die timestamps variiren.

  5. #5
    Alter Contao-Hase Avatar von kmielke
    Registriert seit
    21.06.2009.
    Beiträge
    1.173

    Standard

    Hallo Achim,

    das mit der Endzeit kannst du ignorieren, wenn der Haken gesetzt ist, auch wenn das komisch aussieht.

    Zu deiner Fehlermeldung. Kann es sein, dass du Wiederholungen eingetragen hast, ohne anzugeben, wie sich das Event wiederholen soll?

    PHP-Code:
    PHP WarningIllegal string offset 'value' in /home/website/public_.../system/modules/calendar_extended/classes/EventsExt.php on line 247 
    In der Zeile werden die Werte für die Berechnung der Wiederholungen gelesen, und offensichtlich ist das bei dir nicht vorhanden. Check das mal.

    Gruß Kester
    Gruß Kester

    Kein Support via PN ohne vorherige Absprache.

  6. #6
    Contao-Fan
    Registriert seit
    16.05.2014.
    Beiträge
    295

    Standard

    Ist ja das was ich meine, nur das Feld Wiederholungen spielt keine Rolle.

    Es geht nur um Intervall.
    Es ist "Event wiederholen" angeklickt (das von Contao, nicht das erweitert) aber Intervall ist leer (wie man das hinbekommt steht oben).
    Damit ist dann in der Datenbank nichts bei repeatEach eingetragen.
    Im calendar_extendet (EventsExt.php) ist $arrRepeat damit auch leer und beim zugriff auf $arrRepeat['value'] meckert PHP eben, weils den Index nicht gibt.
    Da mandatory sollte das normal nicht vorkommen.
    Sonst könnte man prüfen ob das überhaupt gesetzt ist... potentiell wird das hier ja schon versucht (z. 204)
    PHP-Code:
    if ((($objEvents->recurring && $objEvents->repeatEach) || ($objEvents->recurringExt && $objEvents->repeatEachExt)) && $showRecurrences
    Da aber vermutlich auch "extendet recurrings" gesetzt sind läuft das hier durch obwohl repeatEach null ist.

    edit:
    Ok hatte übersehen, dass $arrRepeat überschrieben wird und bei repeatEachExt auch nur einzelne Werte wie "sunday" gespeichert werden.
    Dann kann natürlich das normale "Event wiederholen" leer sein.
    Wenn man einfach das Häckchen bei "Event wiederholen (erweitert)" setzt und hier parallel zu dem was ich oben meinte auch kein Intervall einträgt passiert hier sonst das gleiche.

    Sprich man müsste in der Datenbank suchen nach "rcurringExt" = 1 und repeatEachExt = sunday (bspw.)
    normal steht da was wie: a:2:{s:4:"unit";s:6:"monday";s:5:"value";s:5:"thir d";}

    edit 2:
    Das mit "Mehrere Bearbeiten" um das zu entdecken funktioniert nicht.
    Da läuft man dann genau in den Fehler bzw. fast:

    Warning: Illegal string offset 'value' in ... \system\modules\calendar_extended\dca\tl_calendar_ events.php on line 459

    Warning: Illegal string offset 'unit' in ... \system\modules\calendar_extended\dca\tl_calendar_ events.php on line 460

    Stellt sich die Frage bekommst du den Fehler für "unit" auch? Ist vtl. tatsächlich unit gesetzt aber kein value (das konnte ich nicht reproduzieren) oder hört es beim ersten Fehler auf.
    Geändert von Znrl (03.05.2015 um 16:05 Uhr)

  7. #7
    Contao-Fan Avatar von dtptiger
    Registriert seit
    20.06.2009.
    Ort
    Nürnberg
    Beiträge
    819

    Standard

    Hi Kester,

    jetzt endlich kam ich dazu den Fehler über eingrenzen der individuellen Kalender zu finden. Sind viele mit vielen Einträgen.
    Habe den Kopf voll mit anderem Zeug wie Genossenschaftsvollversammlung ...

    Zu deiner Fehlermeldung. Kann es sein, dass du Wiederholungen eingetragen hast, ohne anzugeben, wie sich das Event wiederholen soll?
    Ja!
    "Wiederholungen" und "Wiederholungen erweitert" waren beide angehakt!

    Jetzt ist der Server und das Log wieder unauffällig.

    Gruss
    Achim

  8. #8
    Alter Contao-Hase Avatar von kmielke
    Registriert seit
    21.06.2009.
    Beiträge
    1.173

    Standard

    Hallo Achim,

    Danke für die Infos. Ist schon komisch, denn das sollte gar nicht möglich sein.

    Gruß Kester


    Gesendet von meinem iPad mit Tapatalk
    Gruß Kester

    Kein Support via PN ohne vorherige Absprache.

  9. #9
    Contao-Fan
    Registriert seit
    16.05.2014.
    Beiträge
    295

    Standard

    Eigentlich nicht.
    Aber wie schon geschrieben:

    1. Event erstellen, nur Titel eingeben (auf jedenfall nichts mit Wiederholungen!) und speichern.
    2. Event wiederholen anklicken (müsste reichen, sonst nochmal sowas wie Veröffentlichen) durch das SubmitOnChange wird das schon in die DB geschrieben.
    3. Das ganze ohne speichern (speichern würde den Fehler anzeigen) verlassen (Zurück, Link anklicken, Browser schließen,...).

    Eine Möglichkeit das zu verhindern wäre bspw. Standard Werte für Intervall, die dann beim anklicken von "Event Wiederholen (und erweitert)" direkt mit eingetragen werden.

    Oder, es wird noch geprüft ob in dem Fall RepeatEachExt nicht nur gesetzt ist (das hat nämlich einen standard Wert bei mir steht dann bspw. "Sunday" drin) sondern ob es komplett gesetzt ist. Also auch ob auch ein "value" (Intervall) gesetzt ist.

    $objEvents->repeatEachExt (Z. 204)
    Dürfte deshalb nämlich immer true sein, wenn "Events wiederholen erweitert" angehakt ist, obwohl "Intervall" fehlt.

  10. #10
    Alter Contao-Hase Avatar von kmielke
    Registriert seit
    21.06.2009.
    Beiträge
    1.173

    Standard

    Habe es jetzt so gemacht, dass in beiden Fällen der Wiederholungen ein Default-Wert gesetzt wird. Wird der Haken also gesetzt, wird Interval immer gefüllt.

    Gruß Kester
    Gruß Kester

    Kein Support via PN ohne vorherige Absprache.

  11. #11
    Alter Contao-Hase Avatar von kmielke
    Registriert seit
    21.06.2009.
    Beiträge
    1.173

    Standard

    Aktuelle Version mit dem Fix ist da...

    Gruß Kester
    Gruß Kester

    Kein Support via PN ohne vorherige Absprache.

  12. #12
    Contao-Fan Avatar von dtptiger
    Registriert seit
    20.06.2009.
    Ort
    Nürnberg
    Beiträge
    819

    Standard

    Hallo Kester,

    es gibt noch eine weitere Kombinationsmöglichkeit
    Zwar gibt es bei „Wiederholungen“ die Möglichkeit Ausnahmen zu definieren, das wäre aber zu logisch gewesen

    Man kann auch "Wiederholungen“ mit „unregelmässingen Wiederholungen“ kombinieren.
    wiederholungen.jpgwiederholungen.jpgwiederholungen.jpg

    Und damit ist ein 8-core Server zuverlässig innerhalb von Sekunden in die Knie zu zwingen.

    Gruss Achim

  13. #13
    Alter Contao-Hase Avatar von kmielke
    Registriert seit
    21.06.2009.
    Beiträge
    1.173

    Standard

    Du machst aber auch Sachen... [emoji28]
    Ich schaue mir das mal an...
    Gruß Kester
    Gruß Kester

    Kein Support via PN ohne vorherige Absprache.

  14. #14
    Alter Contao-Hase Avatar von kmielke
    Registriert seit
    21.06.2009.
    Beiträge
    1.173

    Standard

    Hallo Achim,

    Kannst du mir noch die Startzeit des Events durch geben?
    Passierte das dann im BE? Wenn es im FE passiert, dann brauche ich noch die Art des Moduls inkl. Einstellungen.

    Danke
    Gruß Kester
    Gruß Kester

    Kein Support via PN ohne vorherige Absprache.

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •