Ver Mensaje Individual
  #4 (permalink)  
Antiguo 21/11/2005, 19:02
Avatar de stone_neo
stone_neo
 
Fecha de Ingreso: abril-2004
Ubicación: Peru
Mensajes: 438
Antigüedad: 20 años
Puntos: 15
Pues gracias gente pero ya resolvi mi problema era que la opcion de

allow_call_time_pass_reference
estaba desactivada en mi PHP, asi que solo lo puse en ON en el PHP.ini y se soluciono.

Y pues ahi tienen unos ejemplos sencillos:

Este es el webservice :

Código:
<?php
//Nota : debes tener desactivado el modulo php_soap
//y ademas la variable allow_call_time_pass_reference debe estar en On
//allow_call_time_pass_reference = On
require_once('nusoap.php');
$servidor=new soap_server;
//Aqui se declaran los metodos que son publicos
$servidor->register('Factorial');
function Factorial($numero)
{
    $factorial=1;
    for($i=1;$i<=$numero;$i++)
    {
         $factorial=$factorial*$i;
    }
    return $factorial;
}
$servidor->service($HTTP_RAW_POST_DATA);
?>
Y ahi tienen el script que consume este webservice :

Código:
<?php
require_once('nusoap.php');
$parametros = array('numero'=>'5');
//cambia aqui por la direccion donde esta el webservice
$cliente = new soapclient('http://localhost/servicioweb/nusoap/servicioweb.php');
/**************************************************************************
en caso de que tengas un archivo wsdl
$cliente=new soapclient('http://localhost/servicioweb/nusoap/servicioweb.php','wsdl');
creamos un proxy
$cliente_proxy=$cliente->getProxy();
$resultado=$cliente_proxy->Factorial($parametros);
*****************************************************************************/
$resultado=$cliente->call('Factorial',$parametros);
echo "El Factorial de 5 es ".$resultado;
?>
Recuerden colocar estos scripts en la misma carpeta donde esta el NuSOAP, espero que les sirva nos vemos.
__________________
Rubén Darío Huamaní Ucharima
Web : http://www.gorilla-soft.com
Usuario Linux #382 100 :-)

Última edición por stone_neo; 21/11/2005 a las 19:07