Salut à tous chers WRInautes Je vous présente un API que j'ai réalisé, ce dernier accepte 5 paramètres en tout. Paramètre cp : le code postal (5 chiffres consécutifs) Paramètre departement : le code du département (ex: 10, 06, 5, 2A...) Paramètre ville : un nom de commune (Le, La, Les, Aux, L' et Los sont ignorés en début de chaîne) Paramètre o : une option (J=JSON , P=PHP) Paramètre l : une limite (par défaut 30, minimum 1, maximum 199) [*] Si vous renseignez seulement cp : L'API renvoie toutes les communes qui ont ce code postal. [*] Si vous renseignez cp et ville : L'API renvoie toutes les communes dont le nom (même partiel) correspond au code postal. [*] Si vous renseignez cp, ville et departement : departement est ignoré. [*] Si vous renseignez ville et departement : L'API renvoie toutes les communes dont le nom (même partiel) correspond au département. [*] Si vous renseignez seulement ville : L'API renvoie un résultat ! [*] Si vous renseignez seulement departement : L'API renvoie un résultat vide. Exemples : http://youtroc.com/www/communes-france.api?v=metz http://youtroc.com/www/communes-france.api?v=m&d=57 http://youtroc.com/www/communes-france.api?cp=57550 Pour récupérer le résultat en php : PHP: <span class="syntaxdefault"><br />print_r</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">json_decode</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">file_get_contents</span><span class="syntaxkeyword">(</span><span class="syntaxstring">'http://youtroc.com/www/communes-france.api?o=j&v=brettnach'</span><span class="syntaxkeyword">),</span><span class="syntaxdefault">true</span><span class="syntaxkeyword">));<br /></span><span class="syntaxdefault"> </span> retourne :
Voilà, tout fonctionne en full SQL, les données de population ont été insérées, chaque commune de France en est dotée... L'api ne prend plus qu'un seul paramètre, q... exemple : http://youtroc.com/apis/geofrance?q=r Résultat en XML, pas d'option json et php
Bah c'est bête pourquoi ? Le JSON est pourtant en train de voler la vedette à XML: http://www.developpez.com/actu/32683/Jusqu-ou-ira-l-essor-de-JSON-Le-n ... ce-au-XML/ NB: pour ton API tu devrais regarder au niveau de l'architecture "REST".
Voilà, la version JSON ET PHP ont été rétablies, avec ajout des hopitaux, maternités, pharmacies, et "centre-thermal" pour chaque commune (8500 concernées), service limité a 1000 requetes par ip par jour... Doc en cours de rédaction http://youtroc.com/apis/geofrance?q=m
J'aimerai savoir si quelqu'un serait capable, avec les résultats de cet API en format JSON de faire une page html utilisant AJAX pour suggérer une ville en fonction d'une entrée client... Je donne la base de données complète en échange... id : L'id de chaque commune chef_lieu : Son statut administratif sous forme numérique statut : Son statut administratif en toutes lettres departement : Son département administratif sous la forme suivante : 03 ou 57 ou 2A ... type_semantique : Le type de formulation (exemple : La préfecture d' Aix en Provence) art_maj : L'article qui précède le nom de la commune, en Majuscules charniere_maj : La charnière: (de, du, des) ... commune_maj : Le nom de la commune universel sans accents... art_normal : L'article qui précède le nom de la commune, en caractères enrichis (ponctuation..) charniere_normal : La charnière: (de, du, des) ... en caractères enrichis.. commune_normal Le nom de la commune enrichi... latitude : Latitude GPS longitude : Longitude GPS rayon_km : Rayon en Km d_departement : Nom du département en toutes lettres.. region : nom de la région en toutes lettres... somme_cp : Toutes les codes postaux de la commune... population : Population en 2009... hopital : Nombre d'hôpitaux... pharmacie : Nombre de pharmacies.. maternite : Nombre de maternités... thermal : Nombre de stations thermales... Et-ce pour chaque commune.
Voilà et le jour où quelqu'un ouvrira un nouveau sujet pour demander si un tel service existe tu pourras lui répondre "Moi je l'ai ! Moi je l'avais proposé gratuitement mais personne ne m'a répondu ! Et bien maintenant je le garde pour moi, lalalère !!" :wink: