我有一个 PHP 网络服务,它提供另一个 php 页面,基本上用户可以在线点击一个按钮,并且 web 服务被调用多次,使其易于维护,不确定这是否是你需要的,但它对我来说很好用现在,这是代码的一部分。
我的 web 服务返回 json 或 xml,我在网上找到了这篇文章并进行了修改以满足我的需要。
<?php
case 'whateveryourwebserviceaction':
$params = array("test");
$tsql = "select * from test where test=?";
/*Execute the query with a scrollable cursor so
we can determine the number of rows returned.*/
$cursorType = array("Scrollable" => SQLSRV_CURSOR_KEYSET);
$getProducts = sqlsrv_query($conn, $tsql, $params, $cursorType);
if ( $getProducts === false)
die( FormatErrors( sqlsrv_errors() ) );
$posts = array();
while( $post = sqlsrv_fetch_array( $getProducts, SQLSRV_FETCH_ASSOC))
{
$posts[]=array('post'=>$post);
}
break;
}
if($format == 'json') {
header('Content-type: application/json');
echo json_encode(array('posts'=>$posts));
}
else {
header('Content-type: text/xml');
echo '<posts>';
foreach($posts as $index => $post) {
if(is_array($post)) {
foreach($post as $key => $value) {
echo '<',$key,'>';
if(is_array($value)) {
foreach($value as $tag => $val) {
echo '<',$tag,'>',htmlentities($val),'</',$tag,'>';
}
}
echo '</',$key,'>';
}
}
}
echo '</posts>';
}
?>
这就是我如何使用 jquery 从我的 php 页面调用这个东西。
$.ajax({
type: "GET",
url: "htto:\\server.com?action=whateveryourwebserviceaction&format=json",
dataType: "xml",
success: parseXml,
error: function (xml) {
alert(xml.status + ' ' + xml.statusText);
}});
您可以在任何用户输入上调用此函数并使用 Web 服务提供的结果进行刷新,希望这将有助于您继续前进。