| Autor | Zpráva | ||
|---|---|---|---|
| omorok Profil |
#1 · Zasláno: 30. 1. 2013, 09:19:28
Dobrý den,
Předem děkuji za všechna odpovědi a upozorňuji, že nejsem programátor. Na Raspberry jsem si vytvořil webový server, který mi odchytává data z regulace pro solární systém. Tak nějak jsem to dal dohromady, ale je nepříjemné, že aktualizaci dat na stránkách řeším přes aktualizaci celé stránky přes meta. Hledal jsem a zjistil, že by tyto údaje mohly být aktualizovány např. pomocí JQuery. Něco jsem našel, ale nejsem z toho moudrý. může mi prosím pomoci s tímto? Zde je index.php <!DOCTYPE html>
<html lang="cs-cz" dir="ltr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf8"/>
<link rel="stylesheet" href="layout-style.css" type="text/css" />
<script src="/jquery.min.js"></script>
<script type="application/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
<script language="JavaScript" type="text/JavaScript"></script>
<title>Náš dům v </title>
<meta http-equiv="refresh" content="10;URL=http://10.0.0.10">
</head>
<body id="layout-body">
<table id="layout">
<tr>
<td colspan="2" id="bunka-hlavicka"><h6><a href="index.php"><img src="images/titul_glossy.png" alt="Úvodní stránka" border="0"></a></h6></td>
</tr>
<tr>
<td>
<div id="menu-box">
<ul id="menu" class="clearfix">
<li class="first">
<a class="active" href="index.php">Aktuálně</a></li>
<li><a href="fve.php">Fotovoltaika</a></li>
<li><a href="tuv.php">Fototermika</a></li>
<li><a href="o_dome.php">O Domě</a></li>
<li><a href="galerie.php">Galerie</a></li>
<li><a href="o_strankach.php">O Stránkách</a></li>
</ul>
</div></td> </tr>
<tr>
<td id="schema">
<script type="text/javascript" src="/jscripts/otaceni.js"></script>
<script type="text/javascript" src="http://jqueryrotate.googlecode.com/svn/trunk/jQueryRotate.js"></script>
<style>
.omezujici {position: relative}
.Tkolcss {position: absolute; top: -400px; left: 575px}
.Ufve2 {position: absolute; top: -228px; left: 825px}
.Ifve2 {position: absolute; top: -212px; left: 825px}
.Tzass {position: absolute; top: 140px; left: 240px}
.Ttepl {position: absolute; top: -170px; left: 280px}
.Tspat {position: absolute; top: -170px; left: 380px}
.Pfve2 {position: absolute; top: 10px; left: 850px}
.Pfved {position: absolute; top: 320px; left: 800px}
.Pfvemax {position: absolute; top: 370px; left: 800px}
.cerr {position: absolute; top: -125px; left: 380px}
.cerobr {position: absolute; top: -125px; left: 292px}
.Q {position: absolute; top: -420px; left: 575px}
.QQ {position: absolute; top: -440px; left: 30px}
.Qmax {position: absolute; top: -440px; left: 280px}
.Pfve444 {position: absolute; top: 280px; left: 30px}
.LcelKKF {position: absolute; top: 300px; left: 30px}
.Q333 {position: absolute; top: 330px; left: 30px}
.ETcelKKT {position: absolute; top: 350px; left: 30px}
</style>
<div class="omezujici">
<span class="Tkolcss">
<?php
include("irax.php");
echo ("$Tkol °C");
?>
</span>
<span class="Ufve2">
<?php
include("irax.php");
echo ("$Ufve2 V");
?>
</span>
<span class="Ifve2">
<?php
include("irax.php");
echo ("$Ifve2 A");
?>
</span>
<span class="Tzass">
<?php
include("irax.php");
echo ("$Tzass °C");
?>
</span>
<span class="Ttepl">
<?php
include("irax.php");
echo ("$Ttepl °C");
?>
</span>
<span class="Tspat">
<?php
include("irax.php");
echo ("$Tspat °C");
?>
</span>
<span class="Pfve2">
<?php
include("irax.php");
echo ("$Pfve2 W");
?>
</span>
<span class="Pfved">
<?php
include("irax.php");
echo ("Dnešní energie: $Pfved Wh");
?>
</span>
<span class="Pfvemax">
<?php
include("irax.php");
echo ("Dnešní max. výkon: $Pfvemax W");
?>
</span>
<span class="cerr">
<?php
include("irax.php");
echo ("$cerr");
?>
</span>
<div>
<span class="cerobr">
<?php
include("irax.php");
if( $cer == 1 ):
echo '<img src="images/cerpadlo1.png" alt="Čerpadlo- solární okruh" border="0" id="image"/>';
else:
echo '<img src="images/cerpadlo1.png" alt="Čerpadlo- solární okruh" border="0" />';
endif;
?>
</span>
</div>
<span class="Q">
<?php
include("irax.php");
echo ("$Q kW");
?>
</span>
<span class="QQ">
<?php
include("irax.php");
echo ("Dnešní energie: $QQ kWh");
?>
</span>
<span class="Qmax">
<?php
include("irax.php");
echo ("Dnešní max. výkon: $Qmax kW");
?>
</span>
<span class="Pfve444">
<?php
include("irax.php");
echo ("Fotovoltaická elektrárna dodala od 1.1.2013: $Pfve444 kWh");
?>
</span>
<span class="LcelKKF">
<?php
include("irax.php");
echo ("Fotovoltaická elektrárna ušetřila od 1.1.2013: $LcelKKF Kč");
?>
</span>
<span class="Q333">
<?php
include("irax.php");
echo ("Fototermický systém dodal od 1.1.2013: $Q333 kWh");
?>
</span>
<span class="ETcelKKT">
<?php
include("irax.php");
echo ("Fototermický systém ušetřil od 1.1.2013: $ETcelKKT Kč");
?>
</span>
</div>
</td>
</tr>
<tr><td colspan="2" id="bunka-paticka">
<?php
include("irax.php");
echo ("$datum _");
?>
Copyright(C) </td></tr>
</table>
</body>
</html>A přikládám ještě irax.php (tyto data potřebuji pravidelně automaticky aktualizovat. např. po 10s) <?php
$datum = StrFTime("%d/%m/%Y %H:%M:%S", Time());
$data= fopen("/dev/shm/www.txt", "r"); #otevře soubor
$data2 = fgets($data);
fclose($data);
$textpole = explode (",", $data2); #obsah souboru převedo na "pole" rozčlení podle "," a uloží do proměnné
$Ufve = $textpole[0]; #jednotlivé položky v poli jsou přiřazené proměnným
$Ifve = $textpole[1];
$Tkol = $textpole[2];
$Tzass = $textpole[3];
$Ttepl = $textpole[4];
$Tspat = $textpole[5];
$Pfve = $textpole[6];
$Pfved = $textpole[7];
$Pfvemax = $textpole[8];
$Q = $textpole[9];
$QQ = $textpole[10];
$Qmax = $textpole[11];
$Pfve444 = $textpole[12];
$LcelKKF = $textpole[13];
$Q333 = $textpole[14];
$ETcelKKT = $textpole[15];
$cer = $textpole[16];
if( $cer == 1 ):
$cerr = "Běží";
else:
$cerr = "Stojí";
endif;
$Ufve2= $Ufve/10; #Převede se na reálné hodnoty
$Ifve2= $Ifve/100;
$Pfve2= $Pfve/10;
?>a obrázek webu, jak to celé vypadá:
|
||
| _es Profil |
#2 · Zasláno: 30. 1. 2013, 09:29:15
omorok:
„Hledal jsem a zjistil, že by tyto údaje mohly být aktualizovány např. pomocí JQuery.“ Všeobecne pomocou AJAXu, napríklad tejto jednoduchej funkcie: Univerzální funkce pro AJAX. Viď aj Časté potíže, zajímavosti a poučné debaty » Co vlastně je jQuery?. Možno by bolo aj jednoduchšie sprístupniť súbor /dev/shm/www.txt a spracovať ho až v JS - záleží čo v ňom všetko je.
|
||
| Joker Profil |
_es:
„sprístupniť súbor /dev/shm/w>ww.txt a spracovať ho až v JS“
Když už ho načítá do proměnných, bylo by asi jednodušší z těch proměnných vyrobit JSON a na klientovi zpracovat to. Primitivnější varianta by byla mít samostatný skript na generování celého HTML kódu ve kterém se něco mění (tady by to byl asi vnitřek <div class="omezujici">, ještě by se mu muselo přidat nějaké id a zvlášť pořešit datum a čas v patičce, pokud je nutné ho průběžně aktualizovat) a pak si to prostě stáhnout a nacpat do tenprvek.innerHTML. Ale to už se podobá tomu aktualizování celé stránky. Ještě dodatek, v tom současném kódu je zbytečné volat pokaždé to include("irax.php");, stačí nechat jenom první výskyt.
|
||
| omorok Profil |
#4 · Zasláno: 30. 1. 2013, 10:08:21
Soubor /dev/shm/www.txt obsahuje data v podobě:
10,20,30,0,40,40,1 Ve skutečnosti je toho více,můžou obsahovat i údaje s desetinnou tečkou např: 50.5 Každou sekundu se aktualizují. |
||
|
Časová prodleva: 14 let
|
|||
0