Messaggio d'errore:
Fatal error: Uncaught SoapFault exception: [WSDL] SOAP-ERROR: Parsing WSDL: Couldn't load from 'http://www.xxxxxx.com/ita/codice/id_service.php' : Premature end of data in tag html line 2 in /web/htdocs/www.aaaaaaaa.it/home/motchpotch.php:31 Stack trace: #0 /web/htdocs/www.aaaaaaaa.it/home/motchpotch.php(31): SoapClient->SoapClient('http://www.xxxx...', Array) #1 {main} thrown in /web/htdocs/www.aaaaaaaa.it/home/motchpotch.php on line 31
Codice PHP:
error_reporting(-1);
ini_set('display_errors', TRUE);
$wsdl = 'http://www.xxxxxx.com/ita/codice/id_service.php';
$id_user = '00000'; //user ID = l'id dell'utente assegnato per l'accesso al sito
$id_serv_user = 'zzzzzz'; //serv_user ID = l'id assegnato allo sviluppatore.
class RequestType
{
public $user_id;
public $serv_user_id;
}
$options = array();
$options['classmap']['getConnIdType'] = 'RequestType';
$bank = new RequestType;
$bank->user_id = $id_user;
$bank->serv_user_id = $id_serv_user;
$soapclient = new SoapClient($wsdl,$options);
$result = $soapclient->getConnId($bank);
codice HTML:<h1>Result</h1> <pre>Codice PHP:
var_dump($result)
Io con questo script devo accedere e il web service mi da un "token" con quale poi posso fare altre chiamate per le informazioni sui vari prodotti.codice HTML:</pre>
Altra domanda: Nel mio caso, mi è stato indicato di accedere al web service con questo indirizzo che vedete, che finisce con .php ... negli esempi invece ho visto sempre, che l'indirizzo finisce con .wsdl
Può essere qui il problema?
L'indicazione è quella:
[indicazione]
I servizi messi a disposizione sul server www.xxxxxx.com sono attivi sulla porta 80 e sono
implementati con lo standard WSDL/SOAP.
... controllo dell’accesso basato sul protocollo CHAP ...
1- Il client interroga il servizio http://www.xxxxxx.com/ita/codice/id_service.php
richiamando la funzione getConnId(user,serv_user) dove user è l’id dell’utente
assegnato per l’accesso al sito e serv_user è l’id assegnato allo sviluppatore.
2- Il server restituisce una stringa numerica lunga 16 caratteri chiamata TOKEN. Questo
costituisce il “biglietto” che da diritto ad effettuare la successiva chiamata al servizio vero e
proprio. Ad ogni chiamata il TOKEN è sempre diverso ed utilizzabile per 1 sola chiamata
successiva.
[/indicazione]
Grazie anche per ogni piccolo aiuto!
ciao
topolina