我是ISPConfig和php soap技术的新手。我从中下载了示例脚本 http://www.ispconfig.org/page/en/addons/billing-module.html
但是当我尝试add_invoice时,它告诉了billing_invoice_add函数,我得到了异常:
//* Create the SOAP client connection
$client = new SoapClient(null, array('location' => $soap_location,
'uri' => $soap_uri,
'trace' => 1,
'exceptions' => 1));
//* Login as remote user
if($session_id = $client->login($username,$password)) {
echo 'Logged successfull. Session ID:'.$session_id.'<br />';
}
//* We will create a invouce for the client with the following ID
$client_id = 4;
//* Optional parameters to override the client address or client settings
$params = array();
//* Add the invoice
$invoice_id = $client->billing_invoice_add($session_id, $client_id, $params); # Here I am getting exception.
echo 'InvoiceID: '.$invoice_id.'<br />';
我能够成功登录。
ispConfig版本:3.0
请建议任何方法将发票快速添加到服务器。
我可以在仪表板中添加它。
答案 0 :(得分:0)
经过数小时的调试后,明白了。 该错误是由$ soap_location引起的。 $ soap_location位置指向remote.php
通常,当我们为ispconfig创建任何模块时,模块类应该从远程类继承。现在,当我们需要使用模块时,我们需要调用该模块位置。
例如,在我的情况下,计费是一个模块。它继承自远程类模块。为了获得远程处理和计费功能,我们需要将soapclient loation设为billing.php,而不是remoting.php