Надеюсь, что кто-то знаком с OpenCart здесь.У меня проблема с моей реализацией Nusoap на OpenCart.Это моя реализация
- Я создал новый файл библиотеки с именем ws.php (у меня есть вся папка nusoap в system / library /)
<?php
final class Ws {
public function __construct() {
require_once('nusoap/nusoap.php');
}
}
?>
- Я создал файл контроллера в каталоге / controller / webservice / ws.php
<?php
class ControllerWebserviceWs extends Controller {
private $error = array();
function __construct($registry) {
parent::__construct($registry);
$this->load->library('ws');
$ws = new Ws();
$this->nusoap_server = new soap_server();
$this->nusoap_server->configureWSDL("MemberWSDL",
"urn: MemberWSDL");$ this-> nusoap_server-> register ("selectMemberInfo", массив ("id" => "xsd: int",), массив ("return" => "xsd: string"), "urn: MemberWSDL", "urn: MemberWSDL # selectMemberInfo "," rpc "," кодированный "," Получить информацию об участнике ");}
function index(){
$this->nusoap_server->service(file_get_contents("php://input"));
}
function select_member_info() {
function selectMemberInfo($member_id) {
return 'hello';
}
$ this-> nusoap_server-> service (file_get_contents ("php: // input"));}}?>
- Это мой мыльный клиент, находящийся в приложении из OpenCart
$ nusoap_client = new nusoap_client ("http://localhost/opencart/index.php?route=webservice/ws"); $ id = 90001; if ($ nusoap_client-> fault) {$ text = 'Error:'. $ Nusoap_client-> fault;
}
else
{
if ($nusoap_client->getError())
{
$text = 'Error: '.$nusoap_client->getError();
}
else
{
$row = $nusoap_client->call(
'selectMemberInfo',
array($id),
'urn:MemberWSDL',
'urn:MemberWSDL#selectMemberInfo'
);
echo
'
'.htmlspecialchars($nusoap_client->response,
ENT_QUOTES).'
';}}
?>
И вот что я получаю
HTTP / 1.1 500 Внутренняя ошибка сервера Сервер: Microsoft-IIS / 5.1 Дата: вторник, 04 октября2011 04:47:41 GMT Тип содержимого: text / xml; charset = ISO-8859-1 X-Powered-By: PHP / 5.3.1 Набор-Cookie: PHPSESSID = fas5fisb84rcs3g94njljhrhk4; путь = / Истекает: Четверг, 19 ноября1981 08:52:00 GMT Cache-Control: без хранилища, без кэширования, обязательная повторная проверка, пост-проверка = 0, предварительная проверка = 0 Прагма: отсутствие кэширования Set-Cookie: language = en; expires = Thu, 03-Nov-2011 04:47:41 GMT; путь = /; домен = localhost Set-Cookie: currency = MYR; срок действия = чт, 03-ноя-2011 04:47:41 GMT; путь = /; домен =Сервер localhost: Сервер NuSOAP v0.7.3 X-SOAP-Сервер: NuSOAP / 0.7.3 (1.114) Длина содержимого: 692
xmlns: SOAP-ENV = "http://schemas.xmlsoap.org/soap/envelope/"
xmlns: xsd =" http://www.w3.org/2001/XMLSchema"
xmlns: xsi = "http://www.w3.org/2001/XMLSchema-instance"
xmlns: SOAP-ENC =" http://schemas.xmlsoap.org/soap/encoding/"> SOAP-ENV: Clientmethod 'selectMemberInfo' не определен в службе
Кто-нибудь пытался внедрить Nusoap / SOAP в OpenCart, или есть идеи, что не так в моей реализации?
Заранее спасибо.