stephan Posted February 14, 2010 Share Posted February 14, 2010 Bonjour,Je travail avec un fournisseur capable de me fournir un lien xml qui me permettrai d'afficher dynamiquement un quantitatif, un prix et un delai selon la référence recherchée ....N'y aurai-t-il pas une solution toute prête pour ce genre de traitement ???L'espoir fait vivre Cordialement. Link to comment Share on other sites More sharing options...
stephan Posted February 15, 2010 Author Share Posted February 15, 2010 Bon, je vais encore avancer seul .... (Une fois n'est pas coutume ... mais presque'une habitude)Je vais tenter de faire le truc sous forme du tutoriel, comme ça, ça servira aux autres Tout ceci sera à adapter selon votre fournisseur !!!1 - Lecture des données depuis mon fournisseur. (en php)J'ai fais le choix de partir en full php, certains navigateurs ne sont pas compatible javascript, donc htmlrequest devient difficilement exploitable.Voici la syntaxe d'appel pour savoir l'état de mes références, à adapter bien entendu $donnees ='<?xml version="1.0" encoding="ISO-8859-1" ?> REF1 REF2 REF3 '; Voici le code pour appeler le site function httpsPost($Url, $strRequest) { // Initialisation $ch=curl_init(); // Set parameters curl_setopt($ch, CURLOPT_URL, $Url); // Return a variable instead of posting it directly curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // Active the POST method curl_setopt($ch, CURLOPT_POST, 1) ; // Request curl_setopt($ch, CURLOPT_POSTFIELDS, $strRequest); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); // execute the connexion $result = curl_exec($ch); // Close it curl_close($ch); return $result; } $url = 'https://sitexmlrequest.fr'; $Response = httpsPost($url, $donnees); echo $Response; Avec firebug, on obtient le résultat XML : <?xml version="1.0"?> 1 280 100 16832 Prochaine étape, on décortique le XML et on initialise des variables ! Link to comment Share on other sites More sharing options...
stephan Posted February 15, 2010 Author Share Posted February 15, 2010 Première version du code qui permet d'extraire les datas du XML. $xml = new SimpleXMLElement($Response); foreach ($xml->Item as $item) { echo $item['Text'], ' (Commentaire) '; echo $item['ItemNo'], ' (Reference) '; echo $item['Status'], ' (Status) '; echo $item['delai'], ' (Delai) '; echo $item->Stock, ' (Stock) '; echo $item->Price, ' (Prix) '; } Link to comment Share on other sites More sharing options...
stephan Posted February 15, 2010 Author Share Posted February 15, 2010 2 - Coté Back OfficeOui, là ça se complique, quelle est la meilleur solution à adoptée ?Je pense qu'il vaille mieu faire bien du premier coup, ou du moins s'en rapproche le plus possible ...Je vais modifier les données liées au fournisseurs, parce que c'est bien d'eux que l'on parle !Je vais rajouter deux champs:- xml_url (pour donner le lien d'accès)- xml_req (Sequence d'appel XML)Restera à déterminer un mode opératoire pour dire si cette référence doit oui ou non consulter le XMLpour ce, je vais aussi modifier les champs liés aux articles, J'avais penser à une case à cocher pour dire si cette référence doit consulter le fichier fournisseur, mais pour l'instant on se servira du champs référence fournisseur en rouge !Modification de la structure : ALTER TABLE `ps_supplier` ADD `xml_url` VARCHAR( 256 ) NOT NULL AFTER `name` , ADD `xml_req` VARCHAR( 256 ) NOT NULL AFTER `xml_url` ALTER TABLE `ps_product` ADD `xml_price` DECIMAL( 13, 6 ) NOT NULL AFTER `price` DEFAULT '0' Voir les images avant et après. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now