Out of curiosity I tried and it seems to work like a charm :
<?php error_reporting(E_ALL); if (isset($_POST['BO_XML'])) { try { echo "<pre>"; $myDIS = new COM("SBODI_Server.Node") or die("Error : Could not get DIS COM Object"); echo $myDIS->Interact($_POST['BO_XML']); } catch (Exception $e) { print_r($e); } } else { ?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"/> <title>DIS Node PHP Test</title> </head> <body> <h1>Please enter XML :</h1><br> <form method="post"> <textarea name="BO_XML" style="width: 600px; height: 220px;"><?xml version="1.0" encoding="UTF-16"?><env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"> <env:Body> <dis:Login xmlns:dis="http://www.sap.com/SBO/DIS"> <DatabaseServer>server</DatabaseServer> <DatabaseName>SBODemoDE</DatabaseName> <DatabaseType>dst_MSSQL2012</DatabaseType> <CompanyUsername>manager</CompanyUsername> <CompanyPassword>password</CompanyPassword> <Language>ln_English</Language> <LicenseServer>server:30000</LicenseServer> </dis:Login> </env:Body></env:Envelope></textarea> <br><br> <input type="submit" name="send"> </form> </body></html><?php }?>
This would make B1WS unnecessary and instead of building ( complicated ) SOAP messages, you could send DIS messages directly ( pure XML ).
regards,
Maik