Ver Mensaje Individual
  #1 (permalink)  
Antiguo 19/12/2010, 08:51
Cristina_
 
Fecha de Ingreso: agosto-2009
Mensajes: 52
Antigüedad: 15 años, 7 meses
Puntos: 0
Consulta nuSOAP

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($rsMYSQL_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