出现以下问题:求高手指点啊~~~不胜感激啊!PHP调用服务

解决方案 »

  1.   

    $ashop = arrar('ashop');
    这个写法有问题,参数数组是关联数组,而不是下标数组你可以用
    print_r($client->__getTypes () ); 
    看一下应该是什么样的数据结构$client->__soapCall('getMyGoodListByShopName', $ashop);
    这个写法也有问题
    应写作
    $client->__soapCall('getMyGoodListByShopName', array($ashop));

    $client->getMyGoodListByShopName($ashop);
      

  2.   

    你直接 print_r($goodlist); 就知道了
      

  3.   

    那就是说你的操作是对的,但是提交的参数有问题。他没有找到对应的数据,自然也就只能返回空了
    ashop 是什么呢?
      

  4.   


    ashop是我的一个实例,通过ashop来查找我的商店商品列表
      

  5.   

    那就与你的项目有关了,可能这个 ashop 并没有注册进去
      

  6.   


    对了,我再问下您啊,那个为什么我不能直接用$client->getMyGoodListByShopName,$client->提示的东西好少啊,根本就没有我写的服务里面的函数
      

  7.   

    这要但你的服务是如何写的,也要看你的 WSDL 是如何写的
      

  8.   

    我查看了我的WSDL文档,已经有ashop这个实例了,那是什么问题呢
      

  9.   

    从你的 shopName => 'ashop' 可知 ashop 只不过是一个 字符串值 而已,他不可能出现在 WSDL 文档中你可以贴出 WSDL 一观
      

  10.   

    贴出  WSDL,我可以帮你写代码
      

  11.   


    非常不好意思啊,刚弄错了,这是我的wsdl文档,您帮我看看
    http://pan.baidu.com/share/link?shareid=2683556843&uk=1795364569
      

  12.   

    请求参数改成这样看一下$ashop = array('in0'=>'ashop');
      

  13.   

    由    [5] => struct getMyGoodListByShopName {
     string in0;
    }
    可知
    getMyGoodListByShopName 方法所需的参数是
    array( 'in0' => 'ashop')
      

  14.   

    还是一样的问题啊 ,没有变化啊~~
    你是数据库里有没有叫‘ashop’的商店啊?
    你的一样的问题是指#4那个错误提示吗?
      

  15.   

    还是一样的问题啊 ,没有变化啊~~
    你是数据库里有没有叫‘ashop’的商店啊?
    你的一样的问题是指#4那个错误提示吗?
    是#6的问题?
      

  16.   


    那你可不可以帮我写个,你看到我的wsdl文档了么
      

  17.   


    这样么?高手帮帮忙啊,我是菜鸟啊,之前是用jsp调用,很简单,但这个
    $wsdl = "http://localhost:8080/CommBusiImfoServ/services/CBISService?wsdl";
    $client = new SoapClient($wsdl);
    完了之后使用$client不能引入服务的方法,好烦啊  ~~
      

  18.   

    $client不能引入服务的方法 是什么意思?
    出错?还是什么?你总得说出来吧?你的代码现在写的没有问题了,但没有看到登录的部分,是否需要登录我就不知道了
      

  19.   

    $client->getMyGoodListByShopName
    难道这个方法要自己手动输入么,不能在$client->直接就能提示出来连接服务的方法么