私はそれをWebサービスで使用したい機能を持っています... wsdlとnusoapの場合、phpで私に接続する別のユーザーはnusoapで問題を抱えていません。たとえば、エンキューしてクレジットを取得するための2つのクラスですが、この2つの方法では機能しません...私はaspで機能しませんでした.....これが私の関数と私のWebサービスです。私とどこが問題なのか
ここに私のindex.phpがあります
<?php header('Content-Type: text/xml');
require(dirname(__FILE__).'/gw.interface.php');
$server = new SoapServer('gw.wsdl', array('uri' => 'uri:SMSServer','encoding'=>'UTF-8'));
$server->setClass("gwi");
$server->handle();
// ここで関数を登録する必要があると思いますか??
?>
そして、これがgw.interface.phpの私の関数です
public static function getstatus(&$batchid, &$unique_id)
{
$uname = $_SERVER['PHP_AUTH_USER'];
$pass = $_SERVER['PHP_AUTH_PW'];
if(!isset($_SERVER['PHP_AUTH_USER']) || !db::exists('`users`', '`uname`="'.$uname.'" AND `upass`="'.$pass.'"'))
{
return array('state' => 'error', 'message' => 'Username or/and Password doesnt match.', 'errnum' => '102', 'cost' => '-1', 'msgid' => '-1');
}
$number = sms_send::number_info($uname, $from);
db::update('`users`', '`sents`=`sents`+1', '`uname`="'.$uname.'"');
$gate = SMSGate($number['gateway'], $number['gwuname'], $number['gwpass'], $number['company']);
$sents = sms_send::get_sents($msg_id);
if($sents[0]['state'] == 'working')
{
return array('state' => 'error', 'message' => 'Message is still in sending procces, try after the proccess is done.', 'errnum' => '107', 'rcpts' => array());
}
$sent_rcpts = sms_send::get_sent_rcpts($msg_id, $sents[0]['batchid']);
return array('state' => 'done', 'message' => 'Each recieptor\'s state fetched successfully.', 'errnum' => '100', 'rcpts' => $sent_rcpts);
}