[RESOLU] Récupérer les données en php à partir d'un HTTP GET ?

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] Récupérer les données en php à partir d'un HTTP GET ?

Re: Récupérer les données en php à partir d'un HTTP GET ?

par LittleFairy » 27 avr. 2016, 12:43

Sujet résolu !

Merci @rtur de ta réponse rapide,
voici donc la solution :

$articles_xml = simplexml_load_file('http://www.supersaas.com/api/users?acco ... word=passe');
// print_r($articles_xml);
foreach ($articles_xml ->user as $article) {
print $article->{'full-name'}."<br />\n"; // exemple de syntaxe avec un caractère spécial
print $article->name."<br />\n"; // exemple de syntaxe avec un caractère simple
}

Bonne journée !

Re: Récupérer les données en php à partir d'un HTTP GET ?

par LittleFairy » 27 avr. 2016, 12:17

J'ai trouvé dans les tutoriaux du site !!!
la solution est donc, en php :
<?php
$articles_xml = simplexml_load_file('http://www.supersaas.com/api/users?acco ... sword=Pass');
foreach ($articles_xml ->user as $article) {
print "Nom de l'article: {$article->name} <br />\n";
print "Nom de l'article: {$article->fullname} <br />\n";
// là je sais manipuler les variables pour en faire ce que je veux.
}
?>

Il me reste un dernier souci... Ce n'est pas moi qui choisis les noms des champs, c'est l'API de SuperSaaS, et il y a des champs nommés par exemple full-name.
Or, j'ai un message d'erreur avec le caractère "-".
Y a t'il une façon de l'encapsuler ?

Merci,

E.

Re: Récupérer les données en php à partir d'un HTTP GET ?

par @rthur » 27 avr. 2016, 12:13

Bonjour,

Ça dépend comment sont renvoyées les données par le serveur.
Soit c'est du XML et donc tu peux utiliser SimpleXML et notamment sa fonction simplexml_load_file() qui marche aussi avec des url pour charger un XML et le transformer en objet
https://secure.php.net/manual/fr/functi ... d-file.php

Soit c'est du JSON, et tu peux utiliser file_get_contents() pour récupérer les données puis json_decode() pour récupérer ces données sous la forme d'un objet manipulable en PHP.
https://secure.php.net/manual/fr/functi ... encode.php

Récupérer les données en php à partir d'un HTTP GET ?

par LittleFairy » 27 avr. 2016, 11:43

Bonjour à tous, et merci de votre aide,

je cherche à récupérer les données de mes clients à partir d'une API, dans le système "SuperSaaS" (c'est un agenda en ligne) et je ne sais pas comment m'y prendre... Je suis à l'aise en php, mais je n'ai jamais eu à me connecter à une API ni manipuler les données, alors il me manque quelques informations.

Dans le tutorial de SuperSaaS, ils indiquent que l'API est "RESTfull" et qu'on l'utilise avec le protocole HTTP et (GET, POST, PUT, DELETE, etc.).

Ils expliquent qu'on se connecte ainsi :
http://supersaas.com/api/users?account= ... ord=secret
(et ça fonctionne, je vois la liste des users)

et qu'on peut lire tous les users ainsi :
GET /api/users
avec un document XML

Mais comment puis-je récupérer les données dans des variables php, pour pouvoir les utiliser ?

Merci beaucoup,

E.