Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.06.2010, 18:36   #1
LeoN
Форумчанин
 
Аватар для LeoN
 
Регистрация: 03.11.2006
Сообщений: 278
По умолчанию Zend Framework отлов ошибки в XmlRpc_Client

Делаю скрипт, юзаю XmlRpc_Client из Zend'a.
Используя call делаю запрос авторизации, если вошел все верно, если нет, то возвращается саповская ошибка "SAPE.RU: Login failed (" ошибка под номером 666 (прикольно ). вопрос такой: как ее отловить, чтобы в браузере ничего не было, обработать и выдать свое сообщение. работаю через класс, поэтому желательно с ОПП уклоном.
Разработка сайтов -дело прикольное
LeoN вне форума Ответить с цитированием
Старый 28.06.2010, 07:39   #2
LeoN
Форумчанин
 
Аватар для LeoN
 
Регистрация: 03.11.2006
Сообщений: 278
По умолчанию

помогите пожалуйста, срочно надо.
try-catch не срабатывает.
Разработка сайтов -дело прикольное
LeoN вне форума Ответить с цитированием
Старый 28.06.2010, 09:29   #3
mv28jam
Старожил
 
Аватар для mv28jam
 
Регистрация: 09.09.2008
Сообщений: 2,624
По умолчанию

До кода, который генерит ошибку
http://ru2.php.net/manual/en/functio...or-handler.php
после
http://ru2.php.net/manual/en/functio...or-handler.php
Стрелок-охотник
mv28jam вне форума Ответить с цитированием
Старый 28.06.2010, 11:00   #4
LeoN
Форумчанин
 
Аватар для LeoN
 
Регистрация: 03.11.2006
Сообщений: 278
По умолчанию

Благодарю, то, что нужно.
Разработка сайтов -дело прикольное
LeoN вне форума Ответить с цитированием
Старый 29.06.2010, 06:37   #5
LeoN
Форумчанин
 
Аватар для LeoN
 
Регистрация: 03.11.2006
Сообщений: 278
По умолчанию

Хотя все равно ни***на не работает
видимо эти же функции используются в зенде.
Разработка сайтов -дело прикольное
LeoN вне форума Ответить с цитированием
Старый 29.06.2010, 08:25   #6
mv28jam
Старожил
 
Аватар для mv28jam
 
Регистрация: 09.09.2008
Сообщений: 2,624
По умолчанию

Цитата:
Сообщение от LeoN Посмотреть сообщение
Хотя все равно ни***на не работает
видимо эти же функции используются в зенде.
Этой ф-ей вы перекроете обработчик zend'a, поэтому дело в чём то другом.
Что именно происходит? Как не работает? Бектрейс делали?
Стрелок-охотник
mv28jam вне форума Ответить с цитированием
Старый 29.06.2010, 08:33   #7
LeoN
Форумчанин
 
Аватар для LeoN
 
Регистрация: 03.11.2006
Сообщений: 278
По умолчанию

код:
Код:
$this->client = new Zend_XmlRpc_Client('http://www.sape.ru/api_xmlrpc.php',$httpclient);
$this->client->call('sape.login', array($this->login,$this->password,true));
ошибка:
Цитата:
Fatal error: Uncaught exception 'Zend_XmlRpc_Client_FaultException' with message 'SAPE.RU: Login failed (' in Y:\home\dever.lg\www\Zend\XmlRpc\Cl ient.php:360 Stack trace: #0 Y:\home\dever.lg\www\sape.php(43): Zend_XmlRpc_Client->call('sape.login', Array) #1 Y:\home\dever.lg\www\sape.php(112): SAPE->start() #2 {main} thrown in Y:\home\dever.lg\www\Zend\XmlRpc\Cl ient.php on line 360
ошибка возникает только при неверном логине/пароле
дебаг phpdesigner7 выдает это:
Разработка сайтов -дело прикольное

Последний раз редактировалось LeoN; 29.06.2010 в 08:45.
LeoN вне форума Ответить с цитированием
Старый 29.06.2010, 09:12   #8
mv28jam
Старожил
 
Аватар для mv28jam
 
Регистрация: 09.09.2008
Сообщений: 2,624
По умолчанию

Вам нужно перехватить исключение. Он же пишет Uncaught exception(неперехваченное исключение - фантомас)
PHP код:
$this->client = new Zend_XmlRpc_Client('http://www.sape.ru/api_xmlrpc.php',$httpclient);
try {
$this->client->call('sape.login', array($this->login,$this->password,true));  
} catch (
Zend_XmlRpc_Client_FaultException $e) {
echo 
'something';

так попробуйте
Стрелок-охотник
mv28jam вне форума Ответить с цитированием
Старый 29.06.2010, 09:26   #9
LeoN
Форумчанин
 
Аватар для LeoN
 
Регистрация: 03.11.2006
Сообщений: 278
По умолчанию

выдал:
Цитата:
something
Fatal error: Uncaught exception 'Zend_XmlRpc_Client_FaultException' with message 'SAPE.RU: Please, login' in Y:\home\dever.lg\www\Zend\XmlRpc\Cl ient.php:360 Stack trace: #0 Y:\home\dever.lg\www\sape.php(66): Zend_XmlRpc_Client->call('sape.get_sites') #1 Y:\home\dever.lg\www\sape.php(117): SAPE->get_sites() #2 {main} thrown in Y:\home\dever.lg\www\Zend\XmlRpc\Cl ient.php on line 360
я уже выше писал, что try-catch не помог.
Разработка сайтов -дело прикольное

Последний раз редактировалось LeoN; 29.06.2010 в 09:27. Причина: исправление
LeoN вне форума Ответить с цитированием
Старый 29.06.2010, 09:37   #10
mv28jam
Старожил
 
Аватар для mv28jam
 
Регистрация: 09.09.2008
Сообщений: 2,624
По умолчанию

Цитата:
Сообщение от LeoN Посмотреть сообщение
выдал:
я уже выше писал, что try-catch не помог.
Помог. Внимательно посмотрите, ошибка уже другая (Zend_XmlRpc_Client->call('sape.get_sites')). Смотрите по коду, должно ли выполняться это действие если авторизация не прошла и туда тоже try-catch.
Стрелок-охотник
mv28jam вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не могу настроить Zend Framework vag2005 PHP 1 26.06.2010 03:49
Отлов ссылок W0LF Работа с сетью в Delphi 2 24.04.2010 18:16
Сайт вздомали, главную закодировали Zend`ом zorky Фриланс 5 20.10.2009 13:28
Как в Zend связать два файла? antiv Помощь студентам 3 15.04.2009 07:55
Отлов событий Antoha Общие вопросы Delphi 3 26.10.2008 10:20