![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 44 Pomógł: 2 Dołączył: 14.03.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Chciałbym napisać dla swojego projektu "error handler". Mam już napisane podstawy, jednak nie wiem jak zrobić, aby nie wyświetlał instrukcji wykonanych wyżej. Takie coś jest w myBB, tutaj jakaś przykładowa strona z błędem z cache google - http://209.85.229.132/search?q=cache:5a7-5...=clnk&gl=pl Z góry dzięki, ownede |
|
|
![]()
Post
#2
|
|
Newsman Grupa: Moderatorzy Postów: 4 005 Pomógł: 548 Dołączył: 7.04.2008 Skąd: Trzebinia/Kraków ![]() |
jakich instrukcji? podaj jakiś kod co ma sie wyświetlać, bo instrukcje wyżej to raczej mało mówi.
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 44 Pomógł: 2 Dołączył: 14.03.2009 Ostrzeżenie: (0%) ![]() ![]() |
Chodzi o to, że mam skrypt PHP.
Błąd wywołuje linijka 200, i żeby nie wyświetlało tego co się działo przed błędem jak domyślny handler PHP. Żebym mógł sobie ładne okienko o błędzie handlerem wygenerować, a tego co wcześniej nie było widać (IMG:style_emoticons/default/tongue.gif) |
|
|
![]()
Post
#4
|
|
Newsman Grupa: Moderatorzy Postów: 4 005 Pomógł: 548 Dołączył: 7.04.2008 Skąd: Trzebinia/Kraków ![]() |
hmmm, to jak będziesz miał błąd to przekierowuj header'em na stronę error.php na której sobie odpowiednio ten błąd obsłużysz. ja bym w tym kierunku kombinował.
Ten post edytował piotrooo89 20.11.2009, 12:45:45 |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 44 Pomógł: 2 Dołączył: 14.03.2009 Ostrzeżenie: (0%) ![]() ![]() |
hmmm, to jak będziesz miał błąd to przekierowuj header'em na stronę error.php na której sobie odpowiednio ten błąd obsłużysz. ja bym w tym kierunku kombinował. O tym myślałem, tylko w myBB jest to ciekawie zrobione bo bez przekierowania (IMG:style_emoticons/default/tongue.gif) Mógłbym przekierowywać na show_error.php?errno={$errno}&errstr={$errstr}... ale wtedy można sobie wygenerować jaki się chce błąd :| |
|
|
![]()
Post
#6
|
|
Newsman Grupa: Moderatorzy Postów: 4 005 Pomógł: 548 Dołączył: 7.04.2008 Skąd: Trzebinia/Kraków ![]() |
jak może być zrobione bez przekierowania? masz jakiś 'żywy' przykład?
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 331 Pomógł: 30 Dołączył: 11.11.2008 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
bo tam wszystko jest robione tak:
1. generowanie treści, obsługa bazy danych itd... 2. otwieranie szablonów styli i przypisanie do odpowiednich pól wartości tekstowych 3. jeśli wystąpił błąd - wygeneruj komunikat o błędzie, jeśli nie - idź do kroku 4 4. wyświetla zawartość strony. czyli, zamiast echo(); dajesz np. $bufor_z_trescia.=''; i potem po wykonaniu całej strony sprawdzasz czy nie ma błędu, jeśli nie o dajesz echo($bufor_z_trescia);, a jeśli był jakiś błąd to wyświetlasz komunikat o błędie najprostsze rozwiązanie, jakie może być ;-) |
|
|
![]()
Post
#8
|
|
Newsman Grupa: Moderatorzy Postów: 4 005 Pomógł: 548 Dołączył: 7.04.2008 Skąd: Trzebinia/Kraków ![]() |
kurcze rzeczywiście proste. będe musiał to u siebie gdzieś przetestować. choć ja i tak łapie exception więc trochę inaczej ale pomysł prosty za zarazem genialny.
|
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 331 Pomógł: 30 Dołączył: 11.11.2008 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
jak łapiesz exception przez try...catch to jeszcze prościej, bo nie musisz pisać własnej funkcji i robić tego poprzez set_error_handler();
|
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 44 Pomógł: 2 Dołączył: 14.03.2009 Ostrzeżenie: (0%) ![]() ![]() |
Dzięki wielkie (IMG:style_emoticons/default/smile.gif)
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 12:56 |