Také jsem si myslel, že jsem napsal dostatečně srozumitelně, že máš místo fseek() používat funkci split(), že s tím nebudeš mít potíže.
<?php
$fd=FOpen ("teploty.txt","r");
$line=fgets($fd);
$arr=split(trim($line));
echo $arr[1];
FClose($fd);
?>
Tohle bude fungovat pro 12.35 i pro 12.3.
list($t01, $t02, $t03, $t04, $t05,$t06, $t07, $t08, $t09, $t10,$t11, $t12, $t13, $t14, $t15, $t16) =split(";", trim($line), 16);
Není lepší použít expolode?
Díky Ti, ale příště piš program přímo.
Trvalo mi dlouho, než jsem zjistil že
$arr=split(trim($line)); se musí přepsat na $arr=split(";",($line));
ale alespoň jsem se něco naučil. Díky (prozatim)
Nauč se hledat v php.net, možná to pak půjde rychleji
neboj se že nehledám.
Možná víc než myslíš.
Díky
ds: Jasně, explode() je lepší a rychlejší. Jen jsem si na něj nemohl narychlo vzpomenout.
Jiri Hrdlicka: Kdyby ses podíval na dřívější mé příspěvky, tak bys to tam našel správně. Psal jsem to z hlavy a zrovna když jsem to psal asi už počtvrté, tak jsem se holt spletl. Už mi docela vadí, že všechno musím psát každý den od začátku. To je tak těžké si to vlákno přečíst znovu? Vše už tady bylo.
Zrovna jsem si vzpomněl na film "50krát a stále poprvé". Snad to není tvůj případ.
Zkoušel jsem vše zadávat mnohokrát, všude možně.
Sedím již pátý den u PC od cca 16:00 do cca 24:00 a zkouším.
Myslím, že tomu věnuji času dost.
PHP je pro mě prostě nová věc. Věnuji se tomu teprve pár dní.
Předělal jsem split() na explode(), tak na to mrkni:
http://lisp.wz.cz/hrdlickovi.php
Odpovídají ty názvy?
Nazvy odpovidaji, ale takhle mi to je k ničemu.
Potřeboval jsem vyčitat jednotlive hodnoty z řetězce v souboru teploty.txt
na toto http://hrdlickovi.wz.cz/
zatim jen vodni panely.
zbytek dodělám to zvládnu, ještě ty grafy.
narazil jsem na toto http://jpgraph.net/features/gallery.php#line1
klikneš na graf a ukaze se ti skript
Ty odkazy, které jsem poslal, jsou na grafy, které se vykreslují až v prohlížeči. Ty na WZ budou fungovat. V případě grafů, které se vytvářejí na serveru, si nejsem jist.
Vytvářet grafy na klientovi je lepší, protože to šetří přenosovou kapacitu a snižuje zatížení serveru.
No vždyť ti nic nebrání. Misto cyklu:
foreach($nazvy as $key=>$nazev){...
který vypíše všechno z pole se odkážeš je na jednotlivé položky v poli.
Možná by měla být data ukládána jinak - to záleží na tom jak budeš chtít malovat ty grafy. Respektive můžeš transformovat ten cyklus, který má ve skriptu Kit tak aby vytvořil při průchodu z jednoho pole potřebný počet nových polí, které se pak použijí pro vykreslení grafu
Jedna osa časová, druhá osa teploty.
Musím zkoušet co mi pujde.
Jdu zkoumat flotr :-)
Proto jsem tam ponechal ten vnější cyklus. Počítám s tím, že Jiří bude časem data přidávat místo přepisování, případně je bude ukládat do databáze. SQLite je stále mým favoritem, pro tento účel přímo skvělým. Jen bude vhodné vstupní data trochu předkousat kvůli splnění aspoň 1NF. Tabulka pak bude mít strukturu, kterou Jiří požaduje: Timestamp, senzor, teplota. Všechno má svůj čas.
Ano data se budou přidávat. To už umím.
Na SQLite se podívám
Databáze začne být zajímavá ve chvíli, kdy počet záznamů překročí cca 10000 a je nutné v těch záznamech vyhledávat. MySQL je vhodná tam, kde se často aktualizuje a málo čte. SQLite naopak - občas změna, časté čtení - typické pro webové aplikace.
a co kdybych měl k dispozici CSV data. Posílám již své hodnoty na jistý server, který si je ukládá a generuje CSV data
Nejde o teploty ale o hodnoty z elektroměru, vodoměru a plynoměru.
časové hodnoty a spotřebované množství energií.
CSV se v PHP obvykle dá také bez problémů zpracovat podobným způsobem jako data z databáze. Jen je nutné znát jejich strukturu.
klasická data, časy měření a hodnoty měřáků.
Prosím trofl by si někdo na toto?
http://109.80.22.31/xml.xml
udělat PHP skript pro zobrazování techto udaju?
Abych si mohl navolit který řádek chci zobrazit?
Samozřejmě jen to černé.
Kit asi ví co bych potřeboval
Asi to bude podobné co jsi mi již posilal na Tvem webu.
Díky
XML se zpracovává trochu jinak. Zkus se podívat např. na
http://php.net/manual/en/book.simplexml.php
A co vlastně je to "černé"?
Když se dívám dívám na ten soubor, tak jeho autor asi moc nepochopil, jak XML funguje. Dávat měrné jednotky do stejné položky s naměřenými hodnotami a ještě tu značku nazvat <text>, to je vážně úlet.
Nevhodný formát:
<name>Elektroměr</name>
<text>317.960 kWh</text>
<money>1907.76 CZK</money>
<aname>aktual. výkon:</aname>
<act>0.539 kW/hod</act>
Vhodnější formát, který mě zrovna napadl:
<spotreba name="Elektroměr" mj="kWh">317.960</spotreba>
<money name="Cena" mj="CZK">1907.76</money>
<vykon name="Aktuální výkon" mj="kW">0.539</vykon>
S takovým XML je pak radost pracovat. Nehledě k tomu, že jednotka kW/hod neexistuje.
A i když se XML zpracovává trochu jinak, je možné to v PHP přečíst jako každý jiný textový soubor, který má nějakou strukturu, a potřebné údaje z toho "vykousat".
PS: To černé se dá samozřejmě přečíst i tímto způsobem:
http://ds.mysteria.cz/st.php
<?php
$obsah=file_get_contents("http://109.80.22.31/xml.xml");
echo strip_tags($obsah);
?>
ale to asi nebude ono, že?
kW/hod je prostě kWh. Jen jinak napsano. Je to prostě spotřeba Kw za hodinu Přepíšu to.
Není to přesně ono. Ale díy.
Pokusím se také něco spáchat.