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
Gligamesh
post
Post #2





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

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


Cytat
Chciałbym tylko usłyszeć chociaż jeden sensowny argument przeciw używaniu PDO
czy gdzieś ktoś napisał że jest złe ? "darko" to może Ty spróbuj przekonać mnie do PDO (ale może na PW), skoro jest takie fajne to może ma coś o czym nie wiem.

is_resource, mysql_* i inne a zwłaszcza "Gdybyś tylko chwilę poświęcił na lekturę manuala doczytałbyś" - tutaj warto najpierw spojrzeć na siebie a potem krytykować innych, więc teraz ty zajrzyj do manula (albo bardziej podstaw php) i zobacz dlaczego to nie zadziała.

eh.. wiecie co ja nie jestem żaden guru, nie mam żadnej udokumentowanej wiedzy na temat php bo raczkuje w tym języku ale znam jego podstawy przynajmniej tak mi się wydaje. Jak stwierdził "kalmaceta" trochę pokory i by się przydało ale jak czytam co niektóre osoby wypisują to mnie po prostu na nią nie stać. Problem był z 1 błędem a wy z tego robicie nie wiadomo jakie grupowanie (z ciekawości co na to wskazuje ?), i wkładacie mi w usta nie wiadomo co. Gdzie ja napisałem że PDO jest złe ? to że czegoś nie chce używać bo nie widzę potrzeby to nie znaczy żę jest to nie wiadomo jakie badziewie, ludzie ile wy macie lat ? ! Kolejna sprawa, to nie jest podstawówka i wierzcie mi że nie raz przekopywałem manul w poszukiwaniu rozwiązań, wam za to nawet przez myśl nie przeszło że może ten prosty sposób nie zadziała.

W ramach wyjaśnienia do czego służy to co robię, oczywiście krytyka mile widziana (tylko sensowna). Potrzebowałem czegoś co w prosty i wygodny sposób umożliwi mi informowani o efekcie akcji użytkownika, czyli głupie proste wyświetlanie napisu "operacja się udała" "albo nie". Przy okazji stwierdziłem że ładnie będzie wyświetlić błędy (o ile się jakieś zdarzą) w konkretnym miejscu w jakiś cywilizowany sposób. Postanowiłem więc połączyć w to jeden worek. ot tyle.

Ten post edytował Gligamesh 9.02.2011, 22:45:17
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: 5.10.2025 - 12:35