Foros del Web » Programando para Internet » PHP »

nuSoap

Estas en el tema de nuSoap en el foro de PHP en Foros del Web. Necesito que el webservice me devuelva un XML, hasta ahora tengo esto en el servidor. Código PHP: # informa la conexion require_once( 'includes/init.php' ); # libreria nuSoap require_once( 'classes/soap/nusoap.php' );  ...
  #1 (permalink)  
Antiguo 05/06/2012, 06:21
Avatar de luis010182  
Fecha de Ingreso: julio-2009
Ubicación: Argentina - Capital Federal
Mensajes: 382
Antigüedad: 14 años, 9 meses
Puntos: 27
nuSoap

Necesito que el webservice me devuelva un XML, hasta ahora tengo esto en el servidor.
Código PHP:
# informa la conexion
require_once('includes/init.php');
# libreria nuSoap
require_once('classes/soap/nusoap.php'); 
$URL 'http://localhost/'
$server = new soap_server(); 
$server->configureWSDL('ws_nombre'$URL); 
$server->wsdl->schemaTargetNamespace=$URL;

$server->wsdl->addComplexType(
    
'Competitor',
    
'complexType',
    
'struct',
    
'all',
    
'',
    array(
        
'ID_Competitor' => array('name'=>'ID_Competitor''type'=>'xsd:int'),
        
'Competitor' => array('name'=>'Competitor''type'=>'xsd:string')
    )
);

$server->wsdl->addComplexType(
    
'Competitors',
    
'complexType',
    
'array',
    
'',
    
'SOAP-ENC:Array',
    array(),
    array(
        array(
'ref'=>'SOAP-ENC:arrayType','wsdl:arrayType'=>'tns:Competitor[]')
    ),
    
'tns:Competitor'
);

            
/* competidores */
$server->register('getCompetitors'// Nombre de la funcion 
                   
array(), // Parametros de entrada 
                   
array('return' => 'tns:Competitors'), // Parametros de salida 
                   
$URL
                    
); 
                   
function 
getCompetitors(){
    global 
$db;
    
$sql "SELECT * FROM Competitors";
    
$respuesta $db->getAll($sql);
    return new 
soapval('return''tns:Competitors'$respuesta );
}


$HTTP_RAW_POST_DATA strcasecmp($_SERVER['REQUEST_METHOD'], 'POST') == 0? (isset($GLOBALS['HTTP_RAW_POST_DATA'])? $GLOBALS['HTTP_RAW_POST_DATA'] : file_get_contents("php://input")) : NULL;
$server->service($HTTP_RAW_POST_DATA); 
No se como armar la estructura compleja para que me devuelva un XML, como esta ahora solo me devuelve un array.
  #2 (permalink)  
Antiguo 05/06/2012, 10:43
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 15 años, 11 meses
Puntos: 528
Respuesta: nuSoap

Un xml sería un string. No conozco a profundidad el nusoap, por lo que no sé si puedes hacer que te devuelva un xml, pero una manera podría ser crear el xml y devolverlo como string.

Etiquetas: nusoap, soap, xml, webservice
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:00.