Кто занимался сабжем?
как обращаться к веб-сервису в 1С? указывая внешний ип серва, или используя урл пространства имен, которое мы указали при создании?
Кто занимался сабжем?
как обращаться к веб-сервису в 1С? указывая внешний ип серва, или используя урл пространства имен, которое мы указали при создании?
Используя внешний ип серва
понял.
http://имя сервера/имя публикации/ws/имя веб-сервиса?wsdl
а как вызвать этот метод на сайте, скажем?
Я правильно телепатирую?
Есть сайт, написанный на php, хотим, чтобы функционал этого сайта обращался к веб сервису, поднятому на 1С?
(3) да вы ж телепат!(с)
да.
+ клиент вводит номер счета, ему возвращается признак оплачен он или нет
<?php
$client = new SoapClient("some.wsdl");
$client->SomeFunction($a, $b, $c);
$client->__soapCall("SomeFunction", array($a, $b, $c));
$client->__soapCall("SomeFunction", array($a, $b, $c), NULL,
new SoapHeader(), $output_headers);
$client = new SoapClient(null, array('location' => "http://localhost/soap.php",
'uri' => "http://test-uri/"));
$client->SomeFunction($a, $b, $c);
$client->__soapCall("SomeFunction", array($a, $b, $c));
$client->__soapCall("SomeFunction", array($a, $b, $c),
array('soapaction' => 'some_action',
'uri' => 'some_uri'));
?>
страничка soap.php должна быть создана?
+ и этот soap клиент нужно ставить?
и еще вопрос - как будет происходить авторизация к файловой базе при выполнении веб-сервиса?
Это лишь примеры разные какими способами можно вызвать функции, пусть будет самый простой вариант:
<?php
$client = new SoapClient("http://имя сервера/имя публикации/ws/имя веб-сервиса?wsdl");
$client->SomeFunction($a, $b, $c);
?>
авторизоваться можно вот так
$client = new SoapClient("http://имя сервера/имя публикации/ws/имя веб-сервиса?wsdl", array('login' => "some_name",
'password' => "some_password"));
(10) логин и пароль ж будут в коде страницы. это небезопасно..
это не код страницы, это код php (код который формирует код страницы)
точно..
спасибо! буду думать
еще вопросик. при публикации базы неодступна галочка "публиковать веб-сервисы".
апач ставил админ. что нужно сделать, чтобы галочка была доступна? проблема я так понимаю в апаче
потому что нет ни одного веб-сервиса в конфигурации. спасибо :)
написал
<?php
$client = new SoapClient("http://localhost/webtest/ws/ws1.1cws?wsdl");
$client->ReturnAccountPayment(1,2);
?>
открываю, в браузере:
ReturnAccountPayment(1,2); ?>
+ а урл
http://127.0.0.1/webtest/ws/ws1.1cws?wsdl
выдает ошибку 404
(20) выкладывай
на всякий случай: http://www.php.net/manual/ru/soapclient.soapclient.php
кароч и так и так - все никак
так у тебя чушь написана в коде
<?php $client = new SoapClient("http://localhost/webtest/ws/ws1.1cws?wsdl"); $client->ReturnAccountPayment(); echo($client); ?>
надо так:
<?php $client = new SoapClient("http://localhost/webtest/ws/ws1.1cws?wsdl"); $payinfo = $client->AccountPayment(); echo $payinfo; ?>
<?php $client = new SoapClient("http://localhost/webtest/ws/ws1.1cws?wsdl"); $payinfo = $client->ReturnAccountPayment(); echo $payinfo; ?>
возвращает:
ReturnAccountPayment(); echo $payinfo; ?>
ReturnAccountPayment(); echo $payinfo; ?> - это все, что находится на странице webtest.html в браузере
+ пользователей в базе нет, апач перезапускал
у тебя на скрине настроек в 1с функция называется AccountPayment, а не ReturnAccountPayment
и ещё посмотри лог апача error.log - там тоже бывает интересная информация о проблеме
(29)функция-то как раз return..
все равно, исправил на AccountPayment, такая ж ошибка
[Tue Mar 25 21:54:52 2014] [error] [client 127.0.0.1] File does not exist: C:/Program Files (x86)/Apache Group/Apache2/htdocs/webtest
зачем апач ищет файлы у себя?
(33) да я уже половину перелопатил. похожая: http://infostart.ru/public/155117/ но там загоны с параметрами, мне они пока не нужны
(37) ну, во-первых, не нужно веб-папку в Program Files хранить.
заведи отдельную папку, например, C:\Web\, настрой апач на неё.
а лучще вообще сделать примерно так:
C:\Web\
C:\Web\bin\ - тут хранить бинарники апач и пхп
C:\Web\data\
C:\Web\data\htdocs - тут твой веб-сервер, их может быть более одного в папке data, главное, апач нужно настраивать на них
при таком раскладе бэкап и перенос всего веб-сервера можно реализовать простип зипом и копированием папки C:\Web
после переноса на новое место останется лишь сервис апача проинсталлить: httpd.exe -k install
чо за хрень.
<?php $payinfo = "123"; echo $payinfo; ?>
ничего не выдает. так же не должно быть
на, почитай: http://habrahabr.ru/post/203012/
про mysql и PhpMyAdmin можешь пока опустить, дабы время не терять
если для совсем чайников: http://www.how-tos.ru/145
(41)
"Нажимем снова «Next», затем нажимаем «Install». После установки программы нажимаем «Finish»"
ну уж не до такой степени))
хех. а пхп-то установлен на серве?
(46) я тоже когда-то резидентные программы на ассемблере шпарил, а теперь и двух регистров не свяжу без как минимум дневной подготовки.
навыки имеют свойство забываться при неприменении. но они быстро восстанавливаются, гораздо быстрее, чем ежели с нуля
как проверить и где взять безопасную ссылку на дистр php, чтобы передать её админу?
какой вынь у тебя?
серв 2008
http://windows.php.net/downloads/releases/php-5.5.10-Win32-VC11-x86.zip
а зачем тебе админ? просто извлеки php в свою папку, и настрой на него апачевский конфиг
только должен быть установлен VC11 redist x86
скорее всего, он уже установлен, но проверить не мешает
пздц кароч. проще прям денвер какой-нить воткнуть
(57) ты про это? http://infostart.ru/public/267090/
Стиму совсем не это надо
(59) ему наоборот, из пхп нужно обратиться к данным 1сины
(61) ну, и?
(61) Не ну и, а каждый должен заниматься своим делом, веб-мастер пхп-шник знает как, а Паша не является, таковым.