|
Вызов веб-сервиса 1С из php: ничего не возвращает |
☑ |
0
Юрий Лазаренко
22.03.13
✎
13:42
|
В первый раз в первый класс, так что не пинайте сильно.
Есть в 1С веб-сервис SiteEx с операцией getinvoice и ее параметром invoiceID, тип параметра - string (. В модуле операции все просто:
Функция ПолучитьСчет(invoiceID)
Результат = "Тест пройден! " + invoiceID;
Возврат Результат;
КонецФункции
Текст модуля php:
<pre>
<?php
$client = new SoapClient("http://porno.ru/ut_77/ws/siteex.1cws?wsdl",array(
"trace" => 1,
"exceptions" => 0,
"login" => "******",
"password" => "********"));
$a["invoiceID"] = "123";
$result = $client->getinvoice($a);
echo ('Результ: '. $result);
?>
</pre>
Вызов сервиса происходит, но в результате получаем такое:
<pre>
То есть, дальше вызова сервиса дело не идет и закрывающий тег </pre> не грузится.
Подскажите в какую сторону копать.
|
|
1
Фрагстер
22.03.13
✎
13:43
|
(0) а error reporting в php какой?
|
|
2
Фрагстер
22.03.13
✎
13:43
|
забавный wsdl, кстати
|
|
3
Юрий Лазаренко
22.03.13
✎
13:46
|
(1) Где его посмотреть? php стоит у хостера на серваке...
|
|
4
Фрагстер
22.03.13
✎
13:52
|
(3) короче, сделай
try {
.......
} catch (Exception $exc) {
echo ("\n".$exc->getMessage());
echo ("\n".$exc->getTraceAsString());
}
|
|
5
Юрий Лазаренко
22.03.13
✎
13:57
|
(4) Дуля, ничего не выводит кроме <pre>.
Попробовал перед echo ("Результ" . $result); вставить $b=1/0; - отлавливает ошибку, выдает Warning: Division by zero in /home/safemoney/safemoney.nichost.ru/docs/bitrix/test.php on line 13
Попробовал закомментить строчку echo ("Результ" . $result); - в результате с сервера пришло
<pre>
</pre>
То есть проблема возникает при вызове echo, а не самого сервиса.
|
|
6
Юрий Лазаренко
22.03.13
✎
13:59
|
Ыыыыы, я лошара. Помогло
print_r($result);
Там массив возвращается.
|
|
7
Юрий Лазаренко
22.03.13
✎
13:59
|
(4) Спасиб за поддержку )
|
|
8
Юрий Лазаренко
22.03.13
✎
14:01
|
В результате получаем не строку, а вот такое дело:
stdClass Object
(
[return] => Тест пройден! 123
)
|
|