Hola chicos
Tengo un webservice con nuSOAP que devuelve el resultado de una consulta sql en forma de un array serializado
funciona perfecto cuando la consulta trae algunos cuantos registros pero si la consulta trae muchos muchos registros , no funciona
el código del server dice así dice así
Código PHP:
<?php
require_once 'lib/nusoap.php';
require_once 'ConexionBD.php'; // como import
require_once 'MySQLHelper.php'; // como import
$ns = "http://www.misitio.com/soapTest/";
$server = new soap_server();
$server->configureWSDL("webSERVICE",$ns);
$server->wsdl->shemaTargetNamespace = $ns;
$server->register("remoteQuery", array("query" => "xsd:string"), array("queryResult" => "xsd:string"),$ns);
//
function remoteQuery($query) {
$cn = MysqlHelper::ConexionBD ( ConexionBD::CadenaCN () );
$rs = MysqlHelper::EjecutarConsulta ( $cn, $query );
$rows = array();
while ($row = mysql_fetch_array($rs, MYSQL_NUM)) { $rows[] = $row; }
$response = serialize($rows);
return new soapval("queryResult", "xsd:string", $response);
}
$server->service($HTTP_RAW_POST_DATA);
?>
y su cliente dice asi
Código PHP:
<?php
require_once 'lib/nusoap.php';
$wsdl = "http://www.misitio.com/soapTest/soapServer.php?wsdl";
$client = new nusoap_client($wsdl, "wsdl");
$param = array("query" => "select * from mdl_user where email like 'arroz_con-pollo@hotmail.com'");
$response = $client->call("remoteQuery", $param);
$response = unserialize($response);
foreach($response as $row) {
foreach($row as $dato) {
echo "$dato, ";
}
echo "<br/>";
}
?>
supongo que hay un limite de los datos que un webservice puede enviar, pero donde podría cambiarlo y/o configurarlo
gracias besos miles