![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 4.11.2010 Skąd: Białystok Ostrzeżenie: (0%) ![]() ![]() |
Sytuacja jest taka, program wystawiający aukcje, raz na jakies czas przy metodzie doNewAuctionExt wyrzuca błąd, bo to zly numer EAN, lub coś innego ( mimo, że EAN zawsze sprawdzam, poprzeż liczenie sumy kontrolnej, no ale już nie dochodzę o co w tym chodzi bo to nie takie istotne ) chodzi o to, że wcześniej ten sam program, po tego typu błędzie leciał dalej, a teraz kończy swoje działanie i muszę go uruchamiać ręcznie jeszcze raz, nie mogę tego rozkminić, w programie mam 2 metody jedna wychwytujące błedy druga wyjatki, obie metody wyrzucaja "ładnie błędy na ekran" ( skrypt CLI ) i loguja w pliku, natomiast nie mają zadania wyjścia z programu.... ma ktoś pomysł, czy coś da się z tym zrobić.... wklejanie kodu chyba nie jest potrzebne chodzi ogólnie o myśl co to może być, jak to się robi itp. ...mi przychodzi tylko jedna myśl, że wcześniej metoda doNewAuctionExt zwracałą normalny błąd a teraz fatal błąd (IMG:style_emoticons/default/wink.gif) choć allegro twierdzi, że w metodzie nic nie ruszało.. ja natomiast w skrypcie sporo zmieniałem
Dzięki za odpowiedzi Andrzej |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 124 Pomógł: 22 Dołączył: 10.01.2014 Ostrzeżenie: (0%) ![]() ![]() |
Moja kryształowa kula mówi że jednak potrzebujemy kawałka kodu. Jeżeli wyrzuca ci fatal error to nic nie poradzisz taki jest PHP ale wątpie żeby ci dawał fatala. Jeżeli problem jest z max_timeout to php -q rozwiazuje sprawę bo jak się bawiłem w sockety na php to tak odpalałem skrypty.
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 4.11.2010 Skąd: Białystok Ostrzeżenie: (0%) ![]() ![]() |
Wiec takie 2 metody obsluguja mi bledy w calym skrypcie
CODE set_error_handler( 'error_handler' ); set_exception_handler( 'exception_handler' ); function error_handler( $code, $message, $file = 0, $line = 0 ) { $all = "Błąd: $code \nTreść: $message \nPlik: $file \nLinia: $line\n"; print $all; $all = "\n".date('H:m:s')." ".$all; error_log( $all, 3, 'log/log'.date('y-m-d').'.txt' ); } function exception_handler( $e ) { error_handler( $e->getCode(), $e->getMessage(), $e->getFile(), $e->getLine() ); } natomiast błąd jest wyrzucany przez następującą funkcje klasy Allegro CODE public function wystaw_aukcje( $localId ) { $this->fields = array( 'sessionHandle' => self::$sessionId, 'fields' => $this->fields, 'localId' => $localId, ); return self::$soapClient->doNewAuctionExt( $this->fields ); } funkcje wystaw_aukcje wywołuje już w programie głównym wszystkie pola są poprawne, bo średnio na 500 aukcji wyskoczy jeden błąd zależy mi poprostu na tym, żeby ten błąd nie przerywał programu |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
umieść wywołanie soap w bloku try {} , w cactch zwracaj true/false a poniżej ew. zawartość z wywołania
|
|
|
![]()
Post
#5
|
|
Grupa: Moderatorzy Postów: 36 559 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
No jesli tamta klasa pluje ci wyjątkiem, a ty go nie przechwytujesz, to niestety, wylozy ci sie program....
set_exception_handler sluzy czemu innemu niz myslales http://pl1.php.net/manual/en/function.set-...ion-handler.php Obejrzyj podany tam przyklad. |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 4.11.2010 Skąd: Białystok Ostrzeżenie: (0%) ![]() ![]() |
Dzięki Panowie, rzeczywiście jak wół napisane "Execution will stop after the exception_handler is called. ", jeszcze raz dzięki!
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 26.09.2025 - 08:46 |