it-swarm.com.de

Backend: Deaktiviere Joomlas eigene Art, einen Fehler anzuzeigen und den echten PHP Fehler anzuzeigen?

Ich erhalte im Backend eine Fehlermeldung mit meiner eigenen Erweiterung:

Call to a member function setQuery() on null

Und weil ich nicht hellsichtig bin, brauche ich weitere Informationen darüber, wo der Fehler aufgetreten ist.

Kann ich irgendwie Joomlas eigene Methode zum Anzeigen von Fehlern deaktivieren und den tatsächlichen PHP= Fehler anzeigen lassen, in welcher Datei und Zeile ist der Fehler aufgetreten?

Ich benötige nur die vollständige und echte Fehlermeldung im Backend und nicht im Frontend der Site.

Ich habe dies in meine Erweiterung eingefügt:

error_reporting(E_ALL);
ini_set('display_errors', TRUE);

Und es gibt in einigen Fällen PHP Fehler, aber in diesem Fall ist es schwer zu wissen, welche Zeile der Fehler ist, da Joomla allzu einfach gestaltete Fehlerberichte macht. Ich mag lieber eine nicht gestaltete Seite mit einem verwendbaren Fehlerhinweis :-)

1
Jens Kirk

Schauen Sie sich die PHP Fehlerprotokolldateien Ihres Servers an - sie sollten die vollständige Fehlermeldung melden oder können dafür konfiguriert werden.

In Joomla können Sie zusätzliche Informationen abrufen, indem Sie zu system - global configuration - system Gehen und Debug System Aktivieren (der Aufrufstapel sollte Sie dann auf das Problemmodul/die Problemkomponente hinweisen) und auch server - error reporting bis Development. Abhängig von der Art des Fehlers werden Sie normalerweise auf die richtige Zeile hingewiesen.

pdate

Eine weitere Sache, die funktionieren sollte - gehen Sie zu /templates/system/error.php (Frontend) oder administrator/templates/system/error.php (Backend) und fügen Sie die Zeile hinzu

<?php print_r($this->error);?>

Dies sollte alle Informationen ausgeben, die die Seite mit der Fehlermeldung enthält. Wenn die von Ihnen verwendete Vorlage eine error.php - Datei enthält, müssen Sie diese stattdessen dort hinzufügen.

Machen Sie dies jedoch rückgängig, nachdem Sie fertig sind.

1
Richard B