![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 189 Pomógł: 1 Dołączył: 28.01.2008 Ostrzeżenie: (0%) ![]() ![]() |
Tworzę aplikację w ajaksie i mam pewien problem. Stworzyłem skrypt w PHP usuwający dane z bazy danych. W przypadku poprawnego usunięcia, skrypt w PHP wypisuje ciąg znaków: "removed", w przeciwnym wypadku wyświetla stronę informującą o błędzie. Załóżmy, że ajax wywołuje ten skrypt i napotyka na problem, jak go teraz przedstawić użytkownikowi? Czy nadpisać znacznik html, wyświetlając stronę z błędem(to mój pomysł)? Jak Wy obsługujecie błędy ajax? Czekam na propozycje.
Ten post edytował S_Olewniczak 10.07.2009, 14:46:42 |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 4 340 Pomógł: 542 Dołączył: 15.01.2006 Skąd: Olsztyn/Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Ale korzystasz z jakiejś biblioteki
![]() -------------------- I'm so fast that last night I turned off the light switch in my hotel room and was in bed before the room was dark - Muhammad Ali.
Peg jeżeli chcesz uprawiać sex to dzieci muszą wyjść, a jeżeli chcesz żeby był dobry ty też musisz wyjść - Al Bundy. QueryBuilder, Mootools.net, bbcradio1::MistaJam http://www.phpbench.com/ |
|
|
![]()
Post
#3
|
|
![]() Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
Cytat JA ci dam "obsługę". Wracaj do szkoły i się dokształć. Jakie problem napotyka ajax? -------------------- |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 6 378 Pomógł: 1116 Dołączył: 30.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
Ale chodzi ci o błąd XHR (np. użytkownik idzie off-line) czy o błąd php?
Na pierwsze to np. w YUI YAHOO.util.Connect.xEvent.subscribe(); Na drugie zwracam odpowiedź JSON i buduje/modyfikuję DOM. -------------------- |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 2 592 Pomógł: 445 Dołączył: 12.03.2007 Ostrzeżenie: (0%) ![]() ![]() |
W jQuery obsłUga błędów wygląda tak:
-------------------- |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 726 Pomógł: 129 Dołączył: 10.01.2008 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
Po stronie PHP wyłącz dyrektywę html_errors ini_set" title="Zobacz w manualu PHP" target="_manual http://pl.php.net/manual/en/errorfunc.conf...ini.html-errors Wtedy możesz sprawdzić i wyświetlić błąd:
Kod if(obj.responseText=='removed'){
// zrób coś } else{ // zrób coś innego } -------------------- Pomogłem? Kliknij przycisk Pomógł pod pomocnym Ci postem.
http://maxik.me/ |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 189 Pomógł: 1 Dołączył: 28.01.2008 Ostrzeżenie: (0%) ![]() ![]() |
Dziękuję za pomoc i przepraszam za błąd. Mam jeszcze jedno pytanie. Jak w wygląd strony wkomponować komunikat o błędzie tak aby był przyjemny w odbiorze dla użytkownika? Gdzie wyświetlić komunikat o błędzie?
|
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Na pewno nie przez alert(). Może to być w formie pojawiającego się boxa (czy to w jakimś "globalnym" miejscu strony czy niedaleko elementu, w który przed chwilą klikałem (jakiś przycisk etc.). Dodatkowo często można spotkać prosty i estetyczny mechanizm informowania o błędzie/powodzeniu w postaci odpowiedniego koloru tła elementu, które płynnie w ciągu sekundy-dwóch przechodzi w jakiś neutralny kolor (pasujący do reszty projektu).
|
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 2 592 Pomógł: 445 Dołączył: 12.03.2007 Ostrzeżenie: (0%) ![]() ![]() |
Ostatnio stosuję 3 klasy w css do komunikatów pomyślnych, błędów, informacji.
- ok - zielona ramka, zielonkawe jaśniejsze tło (czasem ico ok) - error - czerwona ramka, czerwonawe tło (czasem czerwony wykrzyknik) - info - niebieska ramka, niebieskawe tło (czasem znak zapytania, lub niebieski wykrzyknik) Miejsce? Zwykle koło topu strony, lub bezpośrednio koło miejsca z którego nastąpiło wywołanie akcji. Do tego w jQuery wpisanie odp do diva, nadanie klasy, pokazanie, przytrzymanie widocznego przez 2,5sec, ukrycie.
-------------------- |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 10.07.2025 - 05:27 |