关于php调用.net的webservice问题 或许可以考虑JS跟PHP结合试试……不知道是否行的…… 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你到sourceforge.net上多下几个nusoap,很多版http://cvs.sourceforge.net/viewcvs.py/nusoap/lib/nusoap.php每个都试试看 <?php/* * $Id: wsdlclient2.php,v 1.2 2004/01/26 07:15:20 snichol Exp $ * * WSDL client sample. * * Service: WSDL proxy * Payload: rpc/encoded * Transport: http * Authentication: none */require_once('nusoap/nusoap.php');$proxyhost = isset($_POST['proxyhost']) ? $_POST['proxyhost'] : '';$proxyport = isset($_POST['proxyport']) ? $_POST['proxyport'] : '';$proxyusername = isset($_POST['proxyusername']) ? $_POST['proxyusername'] : '';$proxypassword = isset($_POST['proxypassword']) ? $_POST['proxypassword'] : '';$client = new soapclient("http://soap.amazon.com/schemas2/AmazonWebServices.wsdl", true, $proxyhost, $proxyport, $proxyusername, $proxypassword);$err = $client->getError();if ($err) { echo '<h2>Constructor error</h2><pre>' . $err . '</pre>';}$proxy = $client->getProxy();$param = array( 'browse_node' => 18, 'page' => 1, 'mode' => 'books', 'tag' =>'Thinking in java', 'type' => 'lite', 'devtag' => 'My token is here');$result = $proxy->BrowseNodeSearchRequest($param);// Check for a faultif ($proxy->fault) { echo '<h2>Fault</h2><pre>'; print_r($result); echo '</pre>';} else { // Check for errors $err = $proxy->getError(); if ($err) { // Display the error echo '<h2>Error</h2><pre>' . $err . '</pre>'; } else { // Display the result echo '<h2>Result</h2><pre>'; print_r($result); echo '</pre>'; }}echo '<h2>Request</h2><pre>' . htmlspecialchars($proxy->request, ENT_QUOTES) . '</pre>';echo '<h2>Response</h2><pre>' . htmlspecialchars($proxy->response, ENT_QUOTES) . '</pre>';echo '<h2>Client Debug</h2><pre>' . htmlspecialchars($client->debug_str, ENT_QUOTES) . '</pre>';echo '<h2>Proxy Debug</h2><pre>' . htmlspecialchars($proxy->debug_str, ENT_QUOTES) . '</pre>';?>然后用我这段程序,查看SOAP消息是否正确,基本就能找到了 实在不行,你下个zend studio DEBUG 一下了。 <?phprequire_once('nusoap.php');$client = new soapclient('http://sms.bmcc.com.cn/webservice/SMsg.asmx?wsdl','wsdl');$RanStr=$client->call('GetRandom'); echo $RanStr;$EntCode="00000";$UserName="test";$HashStr = $RanStr.md5("test");$Content="test";$MobileNumber="13000000000";$SendTime="";$SrcNumber="00000";$DataType="15";$BatchSendID = $client->call('GetNewBatchSendID');$params3 = array('EntCode'=>$EntCode,'UserName'=>$UserName,'RanStr'=>$RanStr,'HashStr'=>$HashStr,'Content'=>$Content,'MobileNumber'=>$MobileNumber,'SendTime'=>$SendTime,'SrcNumber'=>$SrcNumber,'DataType'=>$DataType,'BatchSendID'=>$BatchSendID);$str = &$client->call('SendWithBatchSendID',$params3);echo $str;?> runmin(来了3年多~.~) 我爱你 php <%= %>不解析 寫在2012農曆新年前的話 查询输出 下面的多维数组,如何把每个数组的第一项合并,第二项合并到一起。。 php如何列出一部分字段信息? 白送分,正则表达式1-65535 帮我看下哪里错了,谢谢--在线等(100分奉上) 请教用 php 取得访问者是否在国内的问题,高分,在线等,,,,, Cookie不能建立的问题 登录网站后台老提示用户名错误,数据库里的没错啊 ?什么情况 xp下如何安装配置php,我想要做个论坛 紧急求助!怎么样调试php和asp同时运行的环境啊?
/*
* $Id: wsdlclient2.php,v 1.2 2004/01/26 07:15:20 snichol Exp $
*
* WSDL client sample.
*
* Service: WSDL proxy
* Payload: rpc/encoded
* Transport: http
* Authentication: none
*/
require_once('nusoap/nusoap.php');
$proxyhost = isset($_POST['proxyhost']) ? $_POST['proxyhost'] : '';
$proxyport = isset($_POST['proxyport']) ? $_POST['proxyport'] : '';
$proxyusername = isset($_POST['proxyusername']) ? $_POST['proxyusername'] : '';
$proxypassword = isset($_POST['proxypassword']) ? $_POST['proxypassword'] : '';
$client = new soapclient("http://soap.amazon.com/schemas2/AmazonWebServices.wsdl", true,
$proxyhost, $proxyport, $proxyusername, $proxypassword);
$err = $client->getError();
if ($err) {
echo '<h2>Constructor error</h2><pre>' . $err . '</pre>';
}
$proxy = $client->getProxy();
$param = array(
'browse_node' => 18,
'page' => 1,
'mode' => 'books',
'tag' =>'Thinking in java',
'type' => 'lite',
'devtag' => 'My token is here'
);
$result = $proxy->BrowseNodeSearchRequest($param);
// Check for a fault
if ($proxy->fault) {
echo '<h2>Fault</h2><pre>';
print_r($result);
echo '</pre>';
} else {
// Check for errors
$err = $proxy->getError();
if ($err) {
// Display the error
echo '<h2>Error</h2><pre>' . $err . '</pre>';
} else {
// Display the result
echo '<h2>Result</h2><pre>';
print_r($result);
echo '</pre>';
}
}
echo '<h2>Request</h2><pre>' . htmlspecialchars($proxy->request, ENT_QUOTES) . '</pre>';
echo '<h2>Response</h2><pre>' . htmlspecialchars($proxy->response, ENT_QUOTES) . '</pre>';
echo '<h2>Client Debug</h2><pre>' . htmlspecialchars($client->debug_str, ENT_QUOTES) . '</pre>';
echo '<h2>Proxy Debug</h2><pre>' . htmlspecialchars($proxy->debug_str, ENT_QUOTES) . '</pre>';
?>
然后用我这段程序,查看SOAP消息是否正确,基本就能找到了
$client = new soapclient('http://sms.bmcc.com.cn/webservice/SMsg.asmx?wsdl','wsdl');
$RanStr=$client->call('GetRandom');
echo $RanStr;$EntCode="00000";
$UserName="test";
$HashStr = $RanStr.md5("test");
$Content="test";
$MobileNumber="13000000000";
$SendTime="";
$SrcNumber="00000";
$DataType="15";
$BatchSendID = $client->call('GetNewBatchSendID');
$params3 = array('EntCode'=>$EntCode,'UserName'=>$UserName,'RanStr'=>$RanStr,'HashStr'=>$HashStr,'Content'=>$Content,'MobileNumber'=>$MobileNumber,'SendTime'=>$SendTime,'SrcNumber'=>$SrcNumber,'DataType'=>$DataType,'BatchSendID'=>$BatchSendID);
$str = &$client->call('SendWithBatchSendID',$params3);
echo $str;?>