Joomla Kontrollcenter funktioniert nach PHP7.1 Umstellung nicht mehr

  • Hallo zusammen,


    folgendes System haben wir bei uns im Einsatz:


    Windows Server 2012 R2, IIS8.5, jetzt PHP7.1
    Joomla 3.7, alle Erweiterungen sind laut System aktuell


    Nach dem Update der PHP Version von 5.4 auf 7.1 funktioniert unser Intranet noch völlig normal,
    aber wenn ich ins Kontrollcenter wechseln will bekomme ich folgende Fehlermeldung:


    DateTime::__construct(): Failed to parse time string (1493737091) at Postition 8 (9): Unexpected character --> siehe Dateianhang 1


    Wenn ich wieder auf PHP5.4 wechsle funktioniert alles normal.


    Ich denke der Fehler liegt in der \libraries\fof30\Date\Date.php, habe aber keine Ahnung wo.
    Wieso ich diesen Ordner habe weiß ich auch nicht, da wir kein Akeeba Backup im Einsatz haben.


    Wenn ich den Konstruktor in der PHP Zeile 120 auskommentiere, wechselt das System auf die Standard Date.php im Joomla Verzeichnis,
    aber ich bekomme dieselbe Fehlermeldung.


    Könnt ihr mir helfen?


    Matthias

  • Ich habe jetzt 7.018 probiert, da startet das System das Kontrollcenter gar nicht. Das heißt wenn ich den Link zum Kontrollcenter angebe,
    wechselt das System automatisch zur Startseite des Intranets.


    Dasselbe Problem hatte ich beim Wechsel zu PHP5.6 auch schon.

  • Vielen Dank für die Antworten.
    Ich bin jetzt auch schon einen Schritt weiter. Wenn ich die Web Application Firewall von den Admin Tools über main-disable deaktiviere bekomme ich die Anmeldemaske des Kontrollcenters dargestellt.

    Beim Anmelden wird mir dann aber folgender Fehler angezeigt:


    DateTime::__construct(): Failed to parse time string (.....) at position 7(-): Double timezone specification (siehe Anlage)


    Durch Zurück ins Kontrollzentrum komme ich aber trotzdem ins Kontrollzentrum.


    christine2: Das Update von JEvent habe ich jetzt parallel auch gemacht.


    Viele Grüße
    Matthias

  • Folgende Erweiterungen habe ich nun deaktiviert, doch leider bekomme ich immer noch dieselbe Fehlermeldung:


    Admin Tools package
    Admintools
    admintools -de-DE
    AkeebaStrapper


    Diese fof30 Library kann man auch deaktivieren. Aber Vorsicht, wenn davor nicht alles von Akeeba deaktiviert ist, kann dir das um die Ohren fliegen. Wozu brauchst du denn die Admin Tools, dazu noch im Intranet? Wie oben erwähnt, würde ich alles gnadenlos rauswerfen, was Ärger macht, für den es (noch?!) keine Abhilfe zu geben scheint.

  • Hallo zusammen,


    wir sind jetzt wieder einen Schritt weiter. Der Fehler liegt sehr wahrscheinling in der Date.php, Zeile 110 in der Variable $Date:


    // If php version below 7.1 and current time, add the microseconds to date.
    // See http://php.net/manual/en/migra…ble.datetime-microseconds

    if ($date === 'NOW' && version_compare(PHP_VERSION, '7.1.0', '<'))
    {
    $date = parent::createFromFormat('U.u', number_format(microtime(true), 6, '.', ''), $tz)->format('Y-m-d H:i:s.u');
    }
    Wenn man die Variable $Date fix einstellt und nicht zusammsetzen lässt wie z.B. hier "$date = '2017-05-04T08:00:00+00:00';" dann tritt der Fehler nicht mehr auf.
    Das heißt, es stimmt etwas an dem format nicht.


    VG
    Matthias