ilLUTZminator Posted June 19, 2006 Report Share Posted June 19, 2006 Die Fehlermeldung: Cannot add header information - headers already sent by ... nervt und kann vermieden werden ... Der Fehler tritt z.B. auf, wenn es ein Problem beim Mailen gibt. Daher habe Code gebaut, der den Fehler in der roten "errorBox" auszugibt. Daf?r habe ich im Verzeichnis includes eine Datei errors.php erzeugt mit folgendem Inhalt: --------------------------------------- <? /* ----------------------------------------------------------------------------------------- errors.php by Lutz / [email protected] ----------------------------------------------------------------------------------------- Released under the GNU General Public License ----------------------------------------------------------------------------------------- The message: Cannot add header information - headers already sent by ... nervs. So find a way to bring error messages in the "errorBox" Write these EARLY error messages into a file and print them out in the header afterwards */ if (!defined('EARLYERRORS')) { // prevent from trying to declare several times ... define('EARLYERRORS', 'ON') ; function EarlyErrorWrite($cError) { // writing into cache should always be possible $cFile = DIR_FS_DOCUMENT_ROOT . '/cache/EarlyErrors.txt' ; // create (or open) a file, go to the end and write the error in one line $hFile = fopen($cFile, "w") ; fseek($hFile, SEEK_END) ; fwrite($hFile, $cError . "\n") ; fclose($hFile) ; } function EarlyErrorRead() { $cFile = DIR_FS_DOCUMENT_ROOT . '/cache/EarlyErrors.txt' ; if (file_exists($cFile)) { // if an EARLY error produced a file -> // print it in an errorBox line by line $cError = "" ; $aLines = file($cFile) ; foreach($aLines as $nLine => $cLine) $cError = $cError . $cLine . " " ; xtc_output_warning($cError) ; // delete the file so that error is only shown ONCE unlink($cFile) ; } } } // if (!defined('EARLYERRORS')) ?> --------------------------------------- Die Funktionen der Datei sind bisher an 2 Stellen eingebunden (Version 3.04) in o inc/xtc_php_mail.inc.php ab Zeile 84 -------------------------------------------- // ### LH 19.06.2006 $ErrorReporting = error_reporting(E_ERROR) ; if (!$mail->Send()) { require (DIR_FS_DOCUMENT_ROOT . '/includes/errors.php'); EarlyErrorWrite("Message was not sent Mailer Error: " . $mail->ErrorInfo) ; error_reporting($ErrorReporting) ; return false ; } error_reporting($ErrorReporting) ; // ### LH 19.06.2006 - End -------------------------------------------- und in o includes/header.php ab Zeile 296 -------------------------------------------- // ### LH - 19.06.2006 require (DIR_FS_DOCUMENT_ROOT . '/includes/errors.php'); EarlyErrorRead() ; // ### LH Ende -------------------------------------------- Damit sehen die Email-Fehler schon mal SCH?N aus .... auch wenn sie nach wie vor nicht sch?n sind. Probierts aus, falls Ihr Euch auch schon mal dr?ber ge?rgert habt. Prinzipiell kann man EarlyErrorWrite() nat?rlich auch an anderen Stellen einsetzen. Ich hatte bisher nur beim Mailen die Notwendigkeit. und jetzt guten Nacht Lutz Link to comment Share on other sites More sharing options...
Deadblow Posted June 23, 2006 Report Share Posted June 23, 2006 Hi, kann jetzt nicht wirklich was dazu sagen, nur dass ich selbige Fehlermeldung immer bekam, wenn ich noch irgendwo ein paar echo-Anweisungen stehen hatte. Es wird also was ausgegeben, was ihm nicht passt. Echos habe ich jetzt bei dir nicht gesehen, aber vielleicht hilft dir das irgendwie weiter. Gru? Bj?rn Link to comment Share on other sites More sharing options...
ilLUTZminator Posted July 3, 2006 Author Report Share Posted July 3, 2006 <div class='quotetop'>QUOTE(Deadblow @ Jun 23 2006, 10:09 PM) Quoted post</div><div class='quotemain'> Hi, kann jetzt nicht wirklich was dazu sagen, nur dass ich selbige Fehlermeldung immer bekam, wenn ich noch irgendwo ein paar echo-Anweisungen stehen hatte. Es wird also was ausgegeben, was ihm nicht passt. Echos habe ich jetzt bei dir nicht gesehen, aber vielleicht hilft dir das irgendwie weiter. Gru? Bj?rn Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.