[PHP] Serveur de WebServices SOAP
juillet 19, 2010
A la demande général, je met le code de mon serveur de WebServices SOAP qui sert dans mon tutorial pour l’iPhone.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 | <?php //On inclue les librairies include('nusoap.php'); include('database.php'); $serveur = new soap_server; //On configure le serveur $serveur->configureWSDL('Books', 'http://www.jkraft.fr/ws/serveur.php', 'http://www.jkraft.fr/ws/serveur.php?wsdl'); $server->wsdl->schemaTargetNamespace ='http://www.jkraft.fr/ws/serveur.php'; //On créer les schémas $serveur->wsdl->addComplexType( 'Contact', 'complexType', 'struct', 'all','', array( 'nom' => array('name' => 'nom', 'type' => 'xsd:string'), 'prenom' => array('name' => 'prenom', 'type' => 'xsd:string'), 'web' => array('name' => 'web', 'type' => 'xsd:string'), 'tel' => array('name' => 'tel', 'type' => 'xsd:int'), )); $serveur->wsdl->addComplexType( 'ContactArray', 'complexType', 'array','', 'SOAP-ENC:Array', array(), array( array('ref'=>'SOAP-ENC:arrayType','wsdl:arrayType'=>'tns:Contact[]')), 'tns:Contact' ); $serveur->register('getContacts', array(), array('Contact' => 'tns:ContactArray')); $serveur->register('addContact', array('nom' => 'xsd:string', 'prenom' => 'xsd:string', 'email' => 'xsd:string', 'tel' => 'xsd:int'), array()); //Fonction qui recupere les contacts function getContacts() { $result = array(); $req="SELECT * FROM `Contacts`"; $res=mysql_query($req); while($obj=mysql_fetch_object($res)) { $result[] = array( 'nom' => $obj->nom, 'prenom' => $obj->prenom,'email'=>$obj->email, 'tel'=>$obj->tel); } return $result; } //Fonction qui ajoute un contacte dans la base function addContact($nom,$prenom,$email,$tel) { $req="INSERT INOT `Contacts` (`id`, `nom`, `prenom`, `email`, `tel`) values ('', '$nom', '$prenom' ,'$email', '$tel')"; mysql_query($req); } $HTTP_RAW_POST_DATA = isset($HTTP_RAW_POST_DATA) ? $HTTP_RAW_POST_DATA : ''; $serveur->service($HTTP_RAW_POST_DATA); </php> |
Catégorie(s): Développement, Iphone, Php, Tutorial | Comments (6)