Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> łapanie wyjątków a połączenie MySql
Gligamesh
post
Post #1





Grupa: Zarejestrowani
Postów: 227
Pomógł: 0
Dołączył: 13.06.2003
Skąd: rykowice

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


Witajcie, poniżej wklejam to co stworzyłem sobie od obsługi błędów i komunikatów (jeszcze nie skończone). Pojawił się spory problem z MySql, chodzi mi o błąd połączenia, proste pytanie jak go złapać ?


  1. $errors = array(
  2. 'error' => array(),
  3. 'warning' => array(),
  4. 'notice' => array());
  5.  
  6. class Error extends Exception
  7. {
  8. protected $level = 'error';
  9. function getLevel()
  10. {
  11. return $this->level;
  12. }
  13. }
  14.  
  15. class Warning extends Error
  16. {
  17. protected $level = 'warning';
  18. }
  19.  
  20. class Notice extends Error
  21. {
  22. protected $level = 'notice';
  23. }
  24.  
  25. function msg($e)
  26. {
  27. global $errors;
  28. $errors[$e->getLevel()][] = (String)$e;
  29. if($e->getLevel() == 'error') {
  30. $tpl = New Template();
  31. $tpl -> assign('e', $e->getMessage());
  32. $tpl -> display('przyklad_bledy.php');
  33. die();
  34. } elseif($e->getLevel() == 'notice') {
  35. // echo $e->getLine().' -> '.$e->getMessage();
  36. }
  37. }
  38.  
  39. function exception_handler($e)
  40. {
  41. msg($e);
  42. }
  43.  
  44. function error_handler($no, $str, $file, $line)
  45. {
  46. if(production_mode === true) {
  47. $msgContent = 'Napotkano błąd aplikacji, numer błędu: '.$no;
  48. } else {
  49. $msgContent = $no.' '.$str.' @ '.$file.' # '.$line;
  50. }
  51.  
  52. msg(new Error($msgContent));
  53. }
  54.  
  55. set_exception_handler('exception_handler');
  56. set_error_handler('error_handler');
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
kalmaceta
post
Post #2





Grupa: Zarejestrowani
Postów: 183
Pomógł: 24
Dołączył: 4.12.2010

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


po pierwsze przeczytaj swój pierwszy post - nie umiem złapać błędu, później piszesz że nie w tym rzecz, jak napisałem strpos to odpowiedziałeś że wiedziałeś, ale coś tam myślałeś..., rotfl

co do krytyki samego rozwiązania, na cholerę użytkownikowi wiedza że to błąd SQL, czystego php, linii, funkcji - jedyne co go może interesować to błędne dane przez niego wprowadzone, które powinny być odfiltrowane zanim przystąpisz do jakiejkolwiek akcji czyli error handler z tego powodu nic nie otrzyma do pracy.
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 6.10.2025 - 12:31