Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2846 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  [Resolu] Problème de récupération d'un fichier résultat de POST (API)

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Resolu] Problème de récupération d'un fichier résultat de POST (API)

n°1959604
zazerty
Posté le 22-01-2010 à 10:14:32  profilanswer
 

Bonjour,
 
Voici mon code :

Code :
  1. $serveur = 'www.monurl.com';
  2. $script = '/dir/traitement.php';
  3. $fp = fsockopen($serveur, 80, $errno, $errstr, 30); // Ouverture d'une connexion sur le port 80 du serveur
  4. if (!$fp){
  5.     echo 'et non!';
  6. }else{
  7. $data = 'login='.urlencode($login).'&pass='.urlencode($pass);
  8. if(count($vars) > 0){
  9.  foreach($vars as $cle=>$value){
  10.   $data .= '&'.$cle.'='.urlencode($value);
  11.  }
  12. }
  13. $envoi  = "POST $script HTTP/1.1\r\n";
  14. $envoi .= "Host: $serveur\r\n";
  15. $envoi .= "Connection: Close\r\n";
  16. $envoi .= "Content-type: application/x-www-form-urlencoded\r\n";
  17. $envoi .= "Content-Length: ".strlen($data)."\r\n\r\n";
  18. $envoi .= $data."\r\n";
  19. $retour = "";
  20. fwrite($fp, $envoi);
  21. while (!feof($fp)) {
  22.  $retour .= fgets($fp, 4096);
  23. }
  24. fclose($fp);
  25. return $retour;
  26. }


 
Ca me retourne un fichier XML, et mon souci est que lorsque je fais une requete pour récupérer 5 lignes de resultats, ca marche sans souci, mais lorsqu'il y a plus de résultat, j'ai un 0 qui se glisse en fin de page de resultat...
 
exemple :

Code :
  1. [...]
  2. <element>
  3. <id>345260</id>
  4. <date><![CDATA[04-04-2010]]></date>
  5. <date_fin><![CDATA[04-04-2010]]></date_fin>
  6. <nom><![CDATA[Meaux]]></nom>
  7. </element>
  8. <element>
  9. <id>345261</id>
  10. <date><![CDATA[10-04-2010]]></date>
  11. <date_fin><![CDATA[10-04-2010]]></date_fin>
  12. <nom><![CDATA[Meaux]]></nom>
  13. </element>
  14. </reponse>
  15. 0


 
Coté serveur intérrogé il n'y a pas de souci, le problème vient donc de l'interprétation de la réponse.. (feof, fgets...)
 
Une idée ? Merci !!


Message édité par zazerty le 22-01-2010 à 15:46:47
mood
Publicité
Posté le 22-01-2010 à 10:14:32  profilanswer
 

n°1959748
zazerty
Posté le 22-01-2010 à 15:46:30  profilanswer
 

Finalement en passant par cURL ca marche !
 

Code :
  1. $data = 'login='.urlencode($login).'&pass='.urlencode($pass);
  2. if(count($vars) > 0)
  3. {
  4.  foreach($vars as $cle=>$value)
  5.  {
  6.   $data .= '&'.$cle.'='.urlencode($value);
  7.  }
  8. }
  9. $curl = curl_init();
  10. curl_setopt($curl, CURLOPT_URL, $serveur.$script);
  11. curl_setopt($curl, CURLOPT_POST, 1);
  12. curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
  13. curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
  14. $page = curl_exec($curl);
  15. curl_close($curl);
  16. return $page;


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  [Resolu] Problème de récupération d'un fichier résultat de POST (API)

 

Sujets relatifs
Problème conditions requete SQLprobleme de redirection
probleme IE - site EXTENSIBLE -- site d'archi[résolu] Décalage de qq pixels en haut sous Firefox ?
[resolu] top 5 sur inner join[PHP/HTML/MySql] Outils de dev freeware [Résolu]
[Python] Supprimer la fin d'un fichier texteProblème avec un site full flash
Redirection de la sortie standard vers une ligne d'un fichier texteProblème d'integration du module javascript Lighbox avec une bdd mysql
Plus de sujets relatifs à : [Resolu] Problème de récupération d'un fichier résultat de POST (API)


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR