Ha fut egy program (linux alatt, C irodott program), akkor hogyan lehetséges realtime-ban egy web applikacion keresztul kiolvasni a program által nyujtott adatokat (pl. homerovel mért adatokat) hogy azt egy weboldalon megtudjam jeleniteni?
1. Illeszteni kell a hardvert (hőmérőt) a géphez.
2. Meg kell írni a C programot, amely kiolvasasa a mért értéket (volatile!).
3. Be kell tenni a cgi-bin direktory-ba, ellátni megfelelően jogokkal (755, v. akármi) és meghívni egy böngészőből ha fut a webserver és jól be is van konfigurálva.
Most ugy mukodik,hogy egy nyomogomb segitsegevel elinditom a programot ( bootolaskor el indul ez a C program)... es egy masik gomb segitsegevel leallitom a programot , ekkor elmenti a mért értékeket egy txt fáljban (a meres idpontjat is + mérést).
Letudom futtatni terminalbol is a programot - ilyenkor kitudom irattatni a konzolba az aktualis mérést. (ekkor is elmenti a program vegeztevel a merest) /amugy nem csak homersekletet mér, de vegyuk pl. a homersekletet - ha az megtudnam jeleniteni , akkor a tobbinek is kene menni/
Nagyon jó kérdés.
1.Ha még nincs telepítve, telepítsd a webszervert a raspberry pi-re (erről írtam egy cikket weboldalamon: http://www.ambrusweb11.hu/2016/12/02/raspberry-pi-weboldal-host/)
2. A fájlba, ahogy mérsz egy adatot, szerintem azonnal írasd bele az értéket; A fájlt a /var/www/html mappába mentsd! Ez a weboldal gyökérkönyvtára.
3. Írj php-ban egy programot, ami például másodpercenként kiolvassa a fájlt és mondjuk diagramot készít belőle:
PHP-ban diagramot úgy tudsz készíteni, hogy egy másik php fájl által generált képet jelenítesz meg. én így csinálnám:
index.php:
<?
while(1=1){
fájlkiolvasástömbbe();
echo "<img src=kepgeneralo_program.php?ertekek_szama=".$értékek[].length;
for($i=1;$i<=$értékek[].length;$i++;){
echo "&".$i."ertek=".értékek[$i];
}
echo ">";
várakozás(1 másodperc);
lapaljáragörgetés_vagy_előzőek_törlése();
}
kepgeneralo.php:
<?php
header("Content-type: image/gif");
$width = 600; //Szélesség
$height = 600; //Magasság
$kep = imagecreate($width, $height);
$hatterszin = imagecolorallocate($kep, 0, 61, 251);
imagefill($kep, 1,1,$hatterszin);
$fekete = imagecolorallocate($kep, 0, 0, 0);
for($i=1;$i<=$_GET["ertekek_szama"];$i++){
$ertek=$_GET[$i"ertek"];
imageline($kep,$i*10 - 10,$elozoertek,$i*10,$ertek;
$elozoertek=$ertek;
}
//imageline($kep, x1, y1, x2, y2, $fekete);
imageflip($kep, IMG_FLIP_VERTICAL);
imagegif($kep);
imagedestroy($kep);
?>
remélem nem hibáztam sokat, de ezeket szerintem ki tudod magadnak javítani (lehet, hogy valahol elfelejtettem pl ;-t rakni a végére)
Itt egy példa arra, hogyan tud grafikonokat kirajzolni a php:
http://www.ambrusweb11.hu/2017/02/11/kinematika-jatek-beta/
és itt egy másik arra, hogy hogyan lehet előre meghatározatlan számú változót átadni egy másik php fájlnak:
http://www.ambrusweb11.hu/suliweb/2017/02/25/eredo-ero-kalkulator/
(saját fejlesztések)
Elkezdtem írni egy php tutorialt, ha valakit érdekel:
http://www.ambrusweb11.hu/category/php/
Köszönöm szépen a jó feladatot, sokat tudtamén is fejlődni vele!
Sok sikert!
(Tóth Ambrus, BP-i Fazekas gimnázium, 7. osztály,
http://ambrusweb11.hu , ambrus@ambrusweb11.hu)
koszonom a valaszokat.
tothambrus11 - neki alltam a tutorialjaid alapjan a dolognak :) remelem a vegen sikerul :) osszehozni
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!