Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]przekierowanie na stronę po błędzie
Forum PHP.pl > Forum > Przedszkole
Large
Witam,
czy jest możliwe przekierowanie na stronę informującą np o przerwie technicznej po błędzie parsowania w PHP - takim który przerwie skrypt?
Szukałem o raportowaniu błędów i nie bardzo rozumiem jak to odnieść do mojego zagadnienia.
Jeśli taka opcja jest możliwa prosiłbym o link nakierowujący.
CuteOne
google -> php error page redirect
Large
Mam taką funkcyjkę na samym początku pliku:

  1. function myErrorHandler($errno, $errstr, $errfile, $errline) {
  2. switch ($errno) {
  3. case E_NOTICE:
  4. case E_USER_NOTICE:
  5. $errors = "Notice";
  6. break;
  7. case E_WARNING:
  8. case E_USER_WARNING:
  9. $errors = "Warning";
  10. break;
  11. case E_ERROR:
  12. case E_USER_ERROR:
  13. $errors = "Fatal Error";
  14. break;
  15. default:
  16. $errors = "Unknown";
  17. break;
  18. }
  19.  
  20. if($errors == "Fatal Error")
  21. {
  22. header("Location: jakis_adres");
  23. }
  24. return true;
  25. }
  26. set_error_handler("myErrorHandler");


Myślę aby notować wszystkie błędy do mysql-a z wyjątkiem Warning i Notice a w przypadku Fatal Error odsyłać do pliku informującego o przerwie. Wykrywa mi i wyświetla w formacie jakim chcę te błędy oprócz właśnie fatal error bo wtedy tradycyjnie wyświetla wiadomość błędu (nie czyta jakby tej funkcji).

Uważacie że co może być nie tak ?
nospor
Zagladasz do manuala:
http://php.net/manual/en/errorfunc.constants.php
i widzisz:
Cytat
E_ERROR (integer) Fatal run-time errors. These indicate errors that can not be recovered from, such as a memory allocation problem. Execution of the script is halted.
I masz odpowiedź na swoje pytanie czy się da czy nie.

Nie mniej jednak jest pewien trik polegający na właściwym użyciu
register_shutdown_function () i error_get_last ()
Polecam lekturę google.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.