Debug error_reporting maxium läuft in Fehler

  • Hallo,


    meine Seite muss auch php8 nutzen, aber es kommt zu Fehlern, tippe auf mein Template. In xampp habe ich nun eine lokale Kopie mit php7 zum laufen bekommen.

    Stelle ich nun $error_reporting auf maxium bekommen ich diesen Fehler:

    Deprecated: Array and string offset access syntax with curly braces is deprecated in C:\xampp\htdocs\test\libraries\joomla\database\driver.php on line 1950

    Deprecated: Array and string offset access syntax with curly braces is deprecated in C:\xampp\htdocs\test\libraries\joomla\database\driver.php on line 1950

    Deprecated: Array and string offset access syntax with curly braces is deprecated in C:\xampp\htdocs\test\libraries\joomla\database\driver.php on line 1950

    Deprecated: Array and string offset access syntax with curly braces is deprecated in C:\xampp\htdocs\test\libraries\joomla\database\driver.php on line 1950

    Deprecated: Array and string offset access syntax with curly braces is deprecated in C:\xampp\htdocs\test\libraries\joomla\database\driver.php on line 1950

    Deprecated: Array and string offset access syntax with curly braces is deprecated in C:\xampp\htdocs\test\libraries\joomla\database\driver.php on line 2026

    Warning: session_name(): Cannot change session name when headers already sent in C:\xampp\htdocs\test\libraries\joomla\session\handler\native.php on line 128

    Warning: session_cache_limiter(): Cannot change cache limiter when headers already sent in C:\xampp\htdocs\test\libraries\joomla\session\handler\native.php on line 235

    Error: Failed to start application: Failed to start the session because headers have already been sent by "C:\xampp\htdocs\test\libraries\joomla\database\driver.php" at line 1950.


    Hat jemand eine Idee woran das liegen kann?


    Mit PHP8 bekomme ich lokal nur Fehler 500, da komme ich also auch nicht weiter.

  • Leider schreibst du nicht, um was für Joomla es sich eigentlich handelt und was du eigentlich vor hast.


    Auch ist entscheidend, welche PHP8-Version exakt. PHP8.2 ist fieser als 8.1 ist fieser als 8.0.


    Stelle Fehler berichten "harmloser" ein, damit du erst mal nur Fatale Fehler angezeigt bekommst, wenn überhaupt.

    Oder stelle es ganz ab, bis eine weiße Seite kommt und aktiviere es dann wieder dezent.


    Nebenbei ist das auch abhängig von der Joomla-Version. Einige deiner Meldungen vom Typ "Deprecated" und "Warning" will ich nicht so recht glauben, dass die unter aktuellem Joomla 4 auftauchen sollten. Sie sind auch erst mal uninteressant.


    Und die letzte Fehlermeldung "headers have already been sent" ist eine Folge des zu hart eingestellten Fehler berichtens.


    Wenn eine Seite mit deaktiviertem Fehler berichten läuft, ist die mal so weit OK.


    Lass es ausgeschaltet. Migriere deine Seite unter PHP7 auf Joomla 4. Und dann erst kümmere dich um belanglosere Meldungen, wenn du meinst, das ist nötig.

    Mit PHP8 bekomme ich lokal nur Fehler 500, da komme ich also auch nicht weiter.

    Auch da müsste man jetzt mehr wissen, aber diese Anleitung könnte helfen, wobei du, wie gesagt eben mit der Fehler berichten EInstellung etwas vorsichtiger dingst: Fehler finden durch detailliertere Fehlermeldung. Debug-Modus. Call stack.


    Konzentriere dich dann nur auf diesen Call-Stack (siehe Bild dort).


    Wenigstens unter Joomla 4 braucht man sogar diese Einstellung GELEGENTLICH gar nicht und es reicht den Debugmodus zu aktivieren, um schlauer zu werden. Ob auch unter Joomla 3 weiß ich nicht so genau.

  • Hallo, es handelt sich um die 3.10.11, aber ich konnte nun auf php8.0 wechseln. Meine Komponenten waren alt.
    Es wurde mit jedoch keine Aktualisierungen angezeigt. Dann habe ich unter Erweiterungen\Aktualisierungen den Cache gelöscht und es wurden Update angezeigt. Danach ging auch php8.0.


    Danke für Deine Mühe!!