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

  FORUM HardWare.fr
  Programmation
  Divers

  Arduino et PHP: La galère!

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Arduino et PHP: La galère!

n°2252097
LeNovicedu​05
Posté le 02-03-2015 à 17:01:23  profilanswer
 

Bonjour a tous, je suis un Lycéen en Terminale STI2D en projet pour le bac
 
Mon problème est la liaison entre l'arduino et une page web en php
L'arduino est branché au port ethernet de mon pc avec une ip que je lui ai donné.
Je peux récupérer toute la page web mais le problème se situe pour récupérer une donné précise dans le code html donné par l'arduino ethernet
Merci d'y prêter intérêt car je n'arrive vraiment pas a faire ceci et je suis au point mort
 
Merci de votre considération et aide

mood
Publicité
Posté le 02-03-2015 à 17:01:23  profilanswer
 

n°2252104
olivthill
Posté le 02-03-2015 à 17:13:31  profilanswer
 

LeNovicedu05 a écrit :

Je peux récupérer toute la page web mais le problème se situe pour récupérer une donné précise dans le code html donné par l'arduino ethernet


Récupérer où ? Du côté client (Arduino, si j'ai bien compris) ou du côté serveur (PHP).
 
Habituellement, une page HTML contient une "form" (ayant une methode "GET" ou "POST" ), et la form contient des champs et un bouton "submit". Quand ce bouton est pressé la forme est "submitée", et donc ces champs sont envoyés au serveur. Là, le PHP, récupère tous les champs dans des variables globales $_GET(...) ou $_POST(...) selon la méthode de la form. On peut avoir une form sans bouton submit, et déclencher un submit par un javascript, ce qui peut être interessant dans certains cas particuliers. Etc. L'essentiel est de bien comprendre la séparation entre le client et le serveur.

n°2252106
LeNovicedu​05
Posté le 02-03-2015 à 17:18:40  profilanswer
 

Merci de ta réponse
Le principe est d'avoir une variable sur l'arduino que je vais récupérer grâce à des fonctions issus du PHP.
Que l'arduino soit un serveur qui ne met que les valeurs voulus et que je puisse les récupérer quand je veux.

n°2252154
LeNovicedu​05
Posté le 03-03-2015 à 08:33:56  profilanswer
 

UP

n°2252275
olivthill
Posté le 04-03-2015 à 15:59:14  profilanswer
 

Comme personne ne répond, je reprends la main, Julien.
 
Mais, comme je n'arrive pas à comprendre le problème, et comme savoir bien poser le problème, c'est déjà parvenir à y répondre à moitié, voici une série de questions :
 
Quels sont les côtés client et serveur ?
Est-ce que la Arduino est bien du côté client comme je le suppose (mais je me trompe peut-être) ?
Pour le PHP, il est à peu près certain qu'il tourne du côté du serveur.
Le PC a-t-il Apache ? Donc, le PC sert de serveur. Cela m'étonnerait que la Arduino ait Apache (mais je me trompe peut-être).
 
Afficher où ?
Afficher du côté du serveur ou du côté du client ?
Afficher sur le PC ou afficher sur la Arduino ?
Afficher dans une page HTML ou par un autre moyen ?
Cela va se faire soit en PHP, soit en Javascript. Il y a le choix.
 
Quel est le moyen d'envoi des données ?  
Est-ce par une méthode Get ou Form, ou par de l'Ajax ou autre chose ?

n°2252333
hinomura
Posté le 05-03-2015 à 09:56:30  profilanswer
 

olivthill a écrit :

Comme personne ne répond, je reprends la main, Julien.
 
Mais, comme je n'arrive pas à comprendre le problème, et comme savoir bien poser le problème, c'est déjà parvenir à y répondre à moitié, voici une série de questions :
 
Quels sont les côtés client et serveur ?
Est-ce que la Arduino est bien du côté client comme je le suppose (mais je me trompe peut-être) ?
Pour le PHP, il est à peu près certain qu'il tourne du côté du serveur.
Le PC a-t-il Apache ? Donc, le PC sert de serveur. Cela m'étonnerait que la Arduino ait Apache (mais je me trompe peut-être).
 
Afficher où ?
Afficher du côté du serveur ou du côté du client ?
Afficher sur le PC ou afficher sur la Arduino ?
Afficher dans une page HTML ou par un autre moyen ?
Cela va se faire soit en PHP, soit en Javascript. Il y a le choix.
 
Quel est le moyen d'envoi des données ?  
Est-ce par une méthode Get ou Form, ou par de l'Ajax ou autre chose ?


Pareil pour moi, trop peu d'éléments pour comprendre le problème et proposer une solution.

n°2252355
LeNovicedu​05
Posté le 05-03-2015 à 16:38:16  profilanswer
 

Le côté client est l'arduino et le serveur est bien sûr le pc qui a un serveur apache par le biais d'apache.
Malheureusement, l'arduino n'a pas de serveur apache. Je veux afficher du côté serveur un nombre capté par l'arduino mais envoyer aussi un nombre à celle-ci via du PHP ou quelque que soit le language.
C'est pour afficher sur le PC et uniquement sur le PC
L'arduino me crée déja une page html ou je pourrais récupérer une valeure mais je dois aussi lui envoyer une commande reset.
 
Le moyen d'envoyer les données et l'arduino branché sur mon pc avec un client PHP et je ne sais rien de la méthode utilisé :/
 
Merci de votre aide

n°2252396
scvo0ne
Posté le 05-03-2015 à 22:38:42  profilanswer
 

C'est assez confus ton truc.
 

Citation :

Le côté client est l'arduino et le serveur est bien sûr le pc qui a un serveur apache par le biais d'apache.


 
Ou pas. Le serveur c'est celui qui met à disposition une info et le client est celui demande l'info. A mon avis t'as branché un capteur sur l'arduino et tu veux afficher les données de ton capteur sur un écran de PC. Si c'est le cas, ton arduino joue le rôle du serveur et le ou les pc qui vont demander l'info seront les clients.
 
Ensuite tu te contredis  
- l'arduino n'a pas de serveur apache
- L'arduino me crée déja une page html
- et dans le premier post : le problème se situe pour récupérer une donné précise dans le code html donné par l'arduino ethernet  
 
J'ai pas trop joué avec mon arduino et je n'ai pas de shield ethernet, mais faire un serveur web ca a pas l'air trop dur d'après http://arduino.cc/en/Tutorial/WebServer
 
Donc du coup :
Ton arduino fait serveur web  
Le pc peut récupérer la page web avec la valeur en utilisant file_get_contents ou curl() si tu veux faire du php, ou plus simplement avec le premier navigateur web venu.  
 
Si tu veux envoyer une commande à ton arduino -> tu appelles une autre page ou tu met un paramètre
 
Par ex :  
- http://ipdelarduino -> affiche la valeur  
- http://ipdelarduino/reset ou http//ipdelarduino/index.html?commande=reset -> l'arduino fait un reset
 
Le premier lien que j'ai cité ne permet pas de faire ça. Mais un coup de google et tu tombes la dessus sur un exemple plus complet : http://playground.arduino.cc/Code/WebServer  
 
 
 
 

n°2252576
LeNovicedu​05
Posté le 08-03-2015 à 14:43:59  profilanswer
 

En fait, je veux envoyer une valeur a l'arduino par le web, qu'elle va comparer avec celle d'un capteur, et agir en conséquence
Par exemple, quand les sont égal, sa me compte 1 dans une variable que je renvoie dans un site web

n°2252673
TotalRecal​l
Posté le 09-03-2015 à 14:59:32  profilanswer
 

Et ça bloque où ?
Admettons que tu aies l'arduino, le shield ethernet, le serveur PHP et que tout ce petit monde pris individuellement fonctionne.

 

As tu vraiment besoin du serveur PHP ? D'après ton dernier post, il faut juste que tu puisses déclencher un appel vers ton arduino, c'est donc lui qui fait serveur, tu n'as qu'à exécuter la page depuis un client (browser web) quelconque sur le réseau et l'arduino renvoie le résultat éventuel au browser -> à aucun moment tu n'as besoin d'un serveur PHP !

 

Si tu arrives déjà à faire tourner ton shield ethernet pour que le PC voie l'arduino et puisse ouvrir une page c'est un bon départ, le reste devrait suivre assez facilement.

 

Si tu sais avoir besoin du serveur, merci de réexpliquer correctement pourquoi.

 

Par ailleurs chacun de ces trucs a plein de tutos sur Internet, donc commence déjà à monter un proto (à moins que tu ne bloques sur la base même de l'architecture de l'ensemble) et reviens si tu as une question précise.

 

En tout cas pour le moment je ne vois pas comment on peut t'aider [:spamafote].


Message édité par TotalRecall le 09-03-2015 à 15:02:37

---------------
Réalisation amplis classe D / T      Topic .Net - C# @ Prog
mood
Publicité
Posté le 09-03-2015 à 14:59:32  profilanswer
 

n°2253513
LeNovicedu​05
Posté le 18-03-2015 à 09:45:43  profilanswer
 

¨Je veux utiliser un serveur PHP pour envoyer la donné vers l'arduino qui est en Webserver mais je ne veux pas le faire sur l'arduino directement car je dois la réutiliser sur un site web.
La difficulté que je rencontre est d'injecter cette valeur sur la ethernet en passant par un navigateur
 

n°2253529
Hermes le ​Messager
Breton Quiétiste
Posté le 18-03-2015 à 11:16:44  profilanswer
 

LeNovicedu05 a écrit :

¨Je veux utiliser un serveur PHP pour envoyer la donné vers l'arduino qui est en Webserver mais je ne veux pas le faire sur l'arduino directement car je dois la réutiliser sur un site web.
La difficulté que je rencontre est d'injecter cette valeur sur la ethernet en passant par un navigateur
 


 
Le problème, c'est que tu ne connais pas la base de la base et tu te lances dans des trucs qui impliquent client / serveur / appel au shell etc... Il va falloir que tu apprennes :
 
1) Comment passer des ordres vers l'arduino en utilisant le shell.
2) Comment avoir un LAMP fonctionnel
3) Comment avoir une page basique en HTML avec un form qui envoie des données à une page de traitement en PHP
4) Comment lancer une commande shell depuis PHP.
 
Voilà, tu as tout ce dont tu as besoin pour réaliser ce que tu veux. Ya rien de difficile là dedans. C'est juste du temps qu'il te faut (et de la persévérance).

n°2253530
LeNovicedu​05
Posté le 18-03-2015 à 11:18:29  profilanswer
 

Merci a toi de me donner l'ordre pour réaliser mes trucs  
T'as pas des tutos ;)?

n°2253534
Hermes le ​Messager
Breton Quiétiste
Posté le 18-03-2015 à 11:34:08  profilanswer
 

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

  Arduino et PHP: La galère!

 

Sujets relatifs
Jeu en PHP conception.IDE PHP avec preview comme codeacademy
(FFmpeg-PHP)Comment passer d'un format à un autre[PHP] Que pensez-vous de mon projet ?
Php et IP.Board[...] Php et Checkbox
[RESOLU][PHP][MYSQL]requête Mysql (INSERT)Générer des inputs en PHP
[PHP] [Curl] Problème avec les espacescomment comparer en PHP deux heures
Plus de sujets relatifs à : Arduino et PHP: La galère!


Copyright © 1997-2018 Hardware.fr SARL (Signaler un contenu illicite) / Groupe LDLC / Shop HFR