Načítanie hodnoty z arduina, ale z cudzieho webu
Načítanie hodnoty z arduina, ale z cudzieho webu
Mám na sieti webový server, na ktorom chcem zobrazovať hodnoty z arduina. Nie však spôsobom, že by som zapisoval hodnoty z arduina do databázy, takto to riešiť nechcem. Hodnoty chcem zobraziť len vtedy, keď si otvorím stránku z webového servera. Tento webový server nebeží na arduine, ale niekde inde na sieti. Na arduine bude bežať taktiež web server.
Teda otvorím si stránku z webového servera, ktorá zobrazí hodnoty niektorých premenných v arduine. Stránku budem refreshovať, aby boli zobrazené stále aktuálne hodnoty. Moja idea je taká, že by som poslal z webu http post a prečítal by som response z web servera na arduine. Idem dobrým smerom, alebo sa to dá vyriešiť aj nejako jednoduchšie? Riešil ste niekto podobný problém?
Teda otvorím si stránku z webového servera, ktorá zobrazí hodnoty niektorých premenných v arduine. Stránku budem refreshovať, aby boli zobrazené stále aktuálne hodnoty. Moja idea je taká, že by som poslal z webu http post a prečítal by som response z web servera na arduine. Idem dobrým smerom, alebo sa to dá vyriešiť aj nejako jednoduchšie? Riešil ste niekto podobný problém?
-
- Příspěvky: 579
- Registrován: 01 srp 2017, 19:29
- Reputation: 0
- Bydliště: Poprad
- Kontaktovat uživatele:
Re: Načítanie hodnoty z arduina, ale z cudzieho webu
Komplikované.. prečo si neotvoriť priamo webstránku Arduina?
Riešenie get contents - získať obsah.
Možností ako nato je viacero, napr:
A pre refresh môžeš použiť napríklad meta tag (príklad 30s), po tomto intervale ti to refreshne celú stránku.
Pre dynamické vykreslenie dát, respektíve stránky ako takej sa v tomto prípade dá použiť i AJAX, ten sa spustí iba vtedy, ak je používateľ na webe.
Riešenie get contents - získať obsah.
Možností ako nato je viacero, napr:
Kód: Vybrat vše
<?php
$url = 'http://adresaarduina';
$contents = file_get_contents($url);
echo $contents;
?>
Kód: Vybrat vše
<meta http-equiv="refresh" content="30">
Re: Načítanie hodnoty z arduina, ale z cudzieho webu
Veď presne cez túto funkciu som to plánoval sťahovať. Len tú stránku nechcem zobraziť celú, ale budem si musieť vyparsovať odtiaľ hodnoty premenných. Hľadal som nejaké elegantnejšie riešenie, ale asi iná cesta neexistuje.
-
- Příspěvky: 579
- Registrován: 01 srp 2017, 19:29
- Reputation: 0
- Bydliště: Poprad
- Kontaktovat uživatele:
Re: Načítanie hodnoty z arduina, ale z cudzieho webu
Parsuj si to napríklad podľa divov, ktoré bude stránka Arduina obsahovať.
Každý div na každú hodnotu. Dá sa použiť i na iné tagy.
Príklad:
Každý div na každú hodnotu. Dá sa použiť i na iné tagy.
Príklad:
Kód: Vybrat vše
$url = 'http://somedomain.com/somesite/';
$content = file_get_contents($url);
$first_step = explode( '<div id="thediv">' , $content );
$second_step = explode("</div>" , $first_step[1] );
echo $second_step[0];
Re: Načítanie hodnoty z arduina, ale z cudzieho webu
Já bych si udělal normálně podstránku (třeba xxx.xxx.xxx.xxx/data) která by ti vrátila jen to co potřebuješ třeba oddělené středníky, aby si přenášel co nejméně dat. Bez jakékoli HTML struktury, čistě jen textový response který si na serveru přebereš. To mi přijde efektivnější než vracet celou HTML stránku s tunou dat a probírat se strukturou. Já bych na tohle šel tím AJAXem, přijde mi to příjemnější, jednodušší a zbavíš se nutnosti refreshe celé stránky. Ale to je na tobě ![Very Happy :D](./images/smilies/icon_e_biggrin.gif)
![Very Happy :D](./images/smilies/icon_e_biggrin.gif)
Kdo je online
Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 42 hostů