Hey guys, I have a problem (again). This time I am trying to use NuSoap w/ XAMPP 1.7.1 which includes PHP5 and MySQL ... I wrote a soap-client:
<?php // Pull in the NuSOAP code require_once('nusoap.php'); // Create the client instance $client = new soapclient('http://localhost/mysql/helloworld2.php'); // Check for an error $err = $client->getError(); if ($err) { // Display the error echo '<p><b>Constructor error: ' . $err . '</b></p>'; // At this point, you know the call that follows will fail } // Call the SOAP method $result = $client->call('hello', array('name' => 'Doro')); // Check for a fault if ($client->fault) { echo '<p><b>Fault: '; print_r($result); echo '</b></p>'; } else { // Check for errors $err = $client->getError(); if ($err) { // Display the error echo '<p><b>Error: ' . $err . '</b></p>'; } else { // Display the result print_r($result); } } ?> and my soap-server:
// Enable debugging *before* creating server instance $debug = 1; // Create the server instance $server = new soap_server; // Register the method to expose $server->register('hello'); // Define the method as a PHP function function hello($name) { $dbhost = 'blah'; $dbuser = 'blub'; $dbpass = 'booboo'; try{ $conn = MYSQL_CONNECT($dbhost, $dbuser, $dbpass) or die ('Error connecting to mysql'); if( !$conn ){ return 'Hello, '.$name.' ... too bad, I cannot connect to the db!'; } else{ $dbname = 'soaperina'; MYSQL_SELECT_DB($dbname) or die('Error connecting to '.dbname); $queryres = @mysql_db_query( 'response', 'SELECT * FROM farben'); return 'RESPONSE: <br>'; while( $arr = mysql_fetch_array( $queryres ) ){ return $arr["ID"]." - ".$arr["Farben"]." - ".$arr["Rating"]."<br>"; } } } catch(Exception $e){ return 'Sorry, '.$name.', but that did not work at all!'; } } // Use the request to (try to) invoke the service $HTTP_RAW_POST_DATA = isset($HTTP_RAW_POST_DATA) ? $HTTP_RAW_POST_DATA : ''; $server->service($HTTP_RAW_POST_DATA); ?> I know that PHP works, the Apache works, MySQL works ... it also works together, but when I try to make it work with NuSOAP it does not work. I get following:
Warning: SoapClient::SoapClient(http://localhost/mysql/helloworld2.php) [soapclient.soapclient]: failed to open stream: Ein Verbindungsversuch ist fehlgeschlagen, da die Gegenstelle nach einer bestimmten Zeitspanne nicht richtig reagiert hat, oder die hergestellte Verbindung war fehlerhaft, da der verbundene Host nicht reagiert hat. in C:\xampp\htdocs\mysql\helloworld2client.php on line 6
Warning: SoapClient::SoapClient() [soapclient.soapclient]: I/O warning : failed to load external entity "http://localhost/mysql/helloworld2.php" in C:\xampp\htdocs\mysql\helloworld2client.php on line 6
Fatal error: Maximum execution time of 60 seconds exceeded in C:\xampp\htdocs\mysql\helloworld2client.php on line 41
I have no idea what that is supposed to mean. I hope ya'll can help!!! Thnx in advance :)