[php5] Przechwytywanie ostrzeżeń

Odpowiedz Nowy wątek
2006-09-15 22:48
0

Mam pytanie. Jak w php 5 można przechwycić Warning i Notice?
Zwykłe try{...}catch (Exception e){...} nie działa :/


Jest jeszcze jeden błąd :)
Unix is user friendly. It's just very particular about who it's friends are.

Pozostało 580 znaków

2006-09-15 23:44
0

Może set_error_handler

Pozostało 580 znaków

2006-09-15 23:51
0

Co prawda takie rozwiązanie nie jest najładniejsze, ale dzięki niemu zauważyłem, że to co otrzymuję, to nie jest ani Warning, ani Notice, tylko jakieś jeszcze inne (errno=2).

Bawię się z simplexml i chcę zabezpieczyć się, przed wczytywaniem błędnie sformatowanego kodu xml. W najgorszym wypadku wyłącze warningi i będę wypisywał lakoniczne "błąd", nie podając dokładniej co jest nie tak :/


Jest jeszcze jeden błąd :)
Unix is user friendly. It's just very particular about who it's friends are.

Pozostało 580 znaków

2006-09-16 00:37
0

tak jak zauważył prgtw włącz error_handler

dla przykłądu ja robię tak, żebym był poinformowany o błędach jakie wystąpiły na stronie :D


function moja_obsluga_bledu($aErrorNo, $aErrorStr, $aFile, $aLine, $aContext){
        $headers = "From: [email protected]\r\n";
        $headers .= "MIME-Version: 1.0\r\n";
        $body = "Numer bledu: ".$aErrorNo."\nTresc bledu: ".$aErrorStr."\nPlik wystapienia bledu: ".$aFile."\nLinia wystapienia bledu: ".$aLine."\nContext: ".$aContext;
        mail("[email protected]", "Błąd na stronie strona.pl", $body, $headers);
        header('Location: error.php');
        exit;
    }
    set_error_handler("moja_obsluga_bledu");
    error_reporting(2048);

i już dostaje maila z informacja o bledzie. i nie musze prosic uzytkownika zeby mnie informowal o bledzie bo sam sobie to zrobie


Daj człowiekowi cracka a jutro znowu bedzie głodny. Naucz go crackować a już nigdy nie będzie głodny.

Pozostało 580 znaków

2006-09-23 17:20
0

@jmail:
Ja robię tak samo ale do maila dołączam jeszcze informacje, od których zależy budowanie strony przez parser:
$_GET, $_POST, PHP_VERSION (akurat u mnie niektóre skrypty chodzą na php4 a niektóre na php5)

Dołączenie tych danych pozwala łatwiej zlokalizować błąd i uaktualnić plik php.

Pozostało 580 znaków

2006-09-23 19:05
0

Jak już w ten sposób, to należałoby również dołączyć $_SERVER i $_COOKIE


Grunt to uziemienie...

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0