Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]przekierowanie na stronę po błędzie
Large
post 17.10.2011, 21:21:24
Post #1





Grupa: Zarejestrowani
Postów: 22
Pomógł: 0
Dołączył: 5.09.2010
Skąd: Łódź

Ostrzeżenie: (0%)
-----


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.


--------------------
Mikielis.pl - strony internetowe Łódź
Go to the top of the page
+Quote Post
CuteOne
post 17.10.2011, 21:23:27
Post #2





Grupa: Zarejestrowani
Postów: 2 958
Pomógł: 574
Dołączył: 23.09.2008
Skąd: wiesz, że tu jestem?

Ostrzeżenie: (0%)
-----


google -> php error page redirect
Go to the top of the page
+Quote Post
Large
post 18.10.2011, 07:56:58
Post #3





Grupa: Zarejestrowani
Postów: 22
Pomógł: 0
Dołączył: 5.09.2010
Skąd: Łódź

Ostrzeżenie: (0%)
-----


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 ?

Ten post edytował Large 18.10.2011, 08:02:18


--------------------
Mikielis.pl - strony internetowe Łódź
Go to the top of the page
+Quote Post
nospor
post 18.10.2011, 08:02:51
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




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.


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 07:43