récupérer données dans une base de données phpMyAdmiin

Bonjour,


Por gérer mes données domotique, mes automates inscrivent des données dans une base de données.


Je voudrais récupérer ces données dans une vue sur iPhone.


J'ai bien crée une page php qui récupère ces données mais je n'arrive pas à  les récupérer dans mon programme et donc dans des variables.


Quelqu'un peut-il orienter mes recherches ?


Merci d'avance


Jean-Luc


Réponses

  • Tu as crées un WebService permettant à  l'iPhone de faire des requêtes sur ta BdD ?


    Tu communiques via WiFi/IP ?


  • Je n'ai rien crée pour l'instant.


    Et je communique en IP.


  • Ta page php doit te renvoyer des données simples, du style JSON, avec les infos que tu veux dedans..


     


    Ton code iOs doit faire une requête sur la page php, récupérer le résultat (le JSON) et l'interpréter pour en faire ce que tu veux après.


  • Pour l'instant, ma page php me renvoie une page html, mais je n'ai pas trouver le moyen de la récupérer dans mon programme.


  • Et question à  10 balles : pourquoi tu ne vas pas directement faire tes query sur la DB depuis l'iPhone ?


    Sinon après il faut que tu fasse un WebService qui te permet de faire du REST.


  • Peux-tu me donner quelques infos sur la façon de constituer cette requête ?




  • Peux-tu me donner quelques infos sur la façon de constituer cette requête ?




     


    Oui mais ça va dépendre surtout du type de DB qui se trouve derrieÌ€re tout ça.


     


    En gros est-ce qu'on est devant un mySQL, un PostgreSQL, une MongoDB, etc... ? Un fois que tu nous auras donné cette information on pourra t'aiguiller correctement. 

  • jean-lucjean-luc Membre
    février 2017 modifié #9

    Ma Bdd est sur Nas crée avec phpMyAdmin.


    Et mes requêtes doivent se faire en mySQL


  • PyrohPyroh Membre
    février 2017 modifié #10

    Maintenant il faut que tu trouve un framework pour connecter une base MySQL en Swift ou ObjectiveC.


    Comme tu as un NAS tu peux t'amuser à  installer Docker dessus et écrire un WebService avec le framework Vapor qui propose un driver MySQL. Docker te permettra de déployer le WebService sur ton NAS.


     


    Une fois que tu as un WebService tu peux aller chercher tes informations en REST. Comme ça tu évite de balader les logins/pass de ta DB dans un iPhone et le processus est plus léger.


     


    Sinon adapte un driver MySQL (celui de Vapor par exemple) pour faire des queries directement depuis ton device.


  • jean-lucjean-luc Membre
    février 2017 modifié #11

    Il y a un serveur Web installé sur le Nas.


    Ma page php me retourne par exemple une page html du genre


     


    En-tête de la page extraction des données


    {[{"id":"1","Portail":"ferme","garage":"ferme","Rdc":"allume"}]}


    fin de la page extraction des données 


     


    Mais je butte sur le fait de récupérer les données dans mon prog iPhone pour les afficher proprement (enfin si c'(est possible)




  • En-tête de la page extraction des données


    {[{"id":"1","Portail":"ferme","garage":"ferme","Rdc":"allume"}]}


    fin de la page extraction des données 


     




    Là  : {[{"id":"1","Portail":"ferme","garage":"ferme","Rdc":"allume"}]} (enfin, à  un truc près), c'est du JSON que tu peux parser.


    Maintenant, la question est, est-ce que tu peux le faire depuis l'extérieur.

  • Je peux le faire en interne ou de l'extérieur

  • Pour faire une requête et interroger un serveur, perso j'utilise Alamofire, que je couple avec Alamofire synchronous, pour faire des requêtes synchrones (ça attend la réponse du serveur avant de continuer).


     


    Pour traiter le JSON reçu, j'utilise SwiftyJSON.


     


    Regarde leur doc, c'est assez simple à  mettre en oe“uvre :)


  • Je vais regarder


    Merci


Connectez-vous ou Inscrivez-vous pour répondre.