[ Príspevkov: 6 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 17.02.14
Prihlásený: 20.11.17
Príspevky: 297
Témy: 105 | 105
Bydlisko: Šuňava
Vek: 21
NapísalOffline : 11.10.2017 21:46 | Ajax tečie ako vodopád (pamäť)

Ahojte, po dlhom boji s tým, ako používať AJAX mám následujúci problém. Potrebujem ním spúšťať PHP scripty, ktoré čítajú a vypisujú obsah PHP súboru (TXT súbory musím použiť z dôvodu používania mikrokontroléra) php kód čítať nevie ani HTML. Iba vykonávať requesty. PHP súbor otvorí TXT súbor a prečíta, väčšinou má asi tak 3 písmená, ako ktorý.. ZAP/VYP.
Kód:
<script>

$.ajax({
    url: "zistinastavenuhodnotuzavlaha.php",
 
    success: function(data) {
        $('#zavlahazistenie').val(data);
    }
});

</script>
<script>

$.ajax({
    url: "zistinastavenuhodnotutermostat.php",
 
    success: function(data) {
        $('#termostatzistenie').val(data);
    }
});
</script>

   <script>
       setInterval(function(){
    $.get('automanualtermostat.php', function(data){
        $('#automanual').text(data)
    });
},1000);   
</script>
   
   <script>
       setInterval(function(){
    $.get('get_teplota.php', function(data){
        $('#stavteplota').text(data + " °C")
    });
},1000);   
</script>
<script>
       setInterval(function(){
    $.get('get_teplota.php', function(data){
        $('#stavteplotatermostat').text(data + " °C")
    });
},1000);   
</script>
<script>
       setInterval(function(){
    $.get('zmenirezimtermostat.php', function(data){
       $('#zmenitrezimtermostat').html(data)
    });
},1000);   
</script>
<script>
       setInterval(function(){
    $.get('zmenigarazovubranu.php', function(data){
       $('#zmenigarazovubranu').html(data)
    });
},1000);   
</script>

<script>
       setInterval(function(){
    $.get('zistinastavenuhodnotutermostat.php', function(data){
       $('#referenciatermostatu').text(data + " °C")
    });
});   
</script>

<script>
       setInterval(function(){
    $.get('hodnotatermostatu.php', function(data){
       $('#hodnotatermostatu').text(data)
    });
});   
</script>
<script>
       setInterval(function(){
    $.get('zmenirezimzavlaha.php', function(data){
       $('#zmenitrezimzavlaha').html(data)
    });
},1000);   
</script>
<script>
       setInterval(function(){
    $.get('automanualtermostat.php', function(data){
        $('#manualautomattermostat').text(data)
    });
},1000);   
</script>
<script>
       setInterval(function(){
    $.get('automanualzavlaha.php', function(data){
        $('#manualautomatzavlaha').text(data)
    });
},1000);   
</script>
<script>
       setInterval(function(){
    $.get('get_zavlaha.php', function(data){
        $('#stavzavlahy').text(data )
    });
},1000);   
</script>
<script>
       setInterval(function(){
    $.get('get_auto.php', function(data){
        $('#stavauta').text(data)
    });
},1000);   
</script>
<script>
       setInterval(function(){
    $.get('get_brana.php', function(data){
        $('#stavbrany').text(data)
    });
},1000);   
</script>
<script>
       setInterval(function(){
    $.get('get_pir.php', function(data){
        $('#stavpir').text(data)
    });
},1000);   
</script>
<script>
       setInterval(function(){
    $.get('get_svetlo.php', function(data){
        $('#stavsvetlo').text(data)
    });
},1000);   
</script>
<script>
       setInterval(function(){
    $.get('zistajaktualnuzavlahu.php', function(data){
        $('#stavzavlahaaktual').text(data + " %")
    });
},1000);   
</script>
<script>
       setInterval(function(){
    $.get('zistinastavenuhodnotuzavlaha.php', function(data){
        $('#referenciazavlahy').text(data + " %")
    });
},1000);   
</script>
<script>
       setInterval(function(){
    $.get('get_osoby.php', function(data){
        $('#stavosob').text(data)
    });
},1000);   
</script>
<script>
       setInterval(function(){
    $.get('get_termostat.php', function(data){
        $('#stavtermostat').text(data)
    });
},1000);   
</script>

<script>
       setInterval(function(){
    $.get('zmenitsvetlo.php', function(data){
        $('#zmenitsvetlo').html(data)
    });
}),1000;   
</script>
<script>
       setInterval(function(){
    $.get('get_termostatrezim.php', function(data){
        $('#termostatrezim').text(data)
    });
},1000);    </script>
<script>
       setInterval(function(){
    $.get('get_zavlaharezim.php', function(data){
        $('#zavlaharezim').text(data)
    });
},1000);   

</script>

Keď si zobrazím konzolu, tak za 3 sekundy už mám skoro 4000 chýb.. Chyba je:
Ajax tečie ako vodopád (pamäť)
Pochopil som, že to nestíha a je to potrebné nejakým spôsobom odľahčiť, či zefektívniť a raz mi až spadol Chrome, čo sa mu ani nedivím.. RAM-ka 80%


_________________
http://bit.do/bitcoinyzdarma --- Bitcoiny zdarma každú hodinu
Online

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

Registrovaný: 17.07.11
Prihlásený: 21.11.17
Príspevky: 1432
Témy: 2 | 2
Bydlisko: Praha / Rev...
NapísalOnline : 12.10.2017 17:51 | Ajax tečie ako vodopád (pamäť)

Nemôžeš volať jeden php skript, ktorý to všetko skontroluje a vypíše všetko naraz? Toto je aj hnusné, aj neefektívne.


_________________
Na súkromné správy týkajúce sa problémov, ktoré sa riešia vo fóre, neodpovedám!
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 17.02.14
Prihlásený: 20.11.17
Príspevky: 297
Témy: 105 | 105
Bydlisko: Šuňava
Vek: 21
Napísal autor témyOffline : 12.10.2017 19:08 | Ajax tečie ako vodopád (pamäť)

Nemôžem.. takto.. Mám stránku index.php kde javascript spustí html stránku, ktorá je obsiahnutá v tom indexe. Tá šablóna to tak má. Na jednej js stránke je tabuľka, kde sa vypisujú dáta, ZAP/VYP, Auto/Manual režim pre jednotlivé zariadenia IoT domácnosti. V inej stránke sa mi načítava na základe Auto/Manual ZAP/Vyp protiakcia, ktorú môžem odkliknúť, nastaviť teplotu pre termostat, plánovač..
Skrátka naraz sa to nedá, lebo rôzne scripty vypisujem inde.. Dalo by sa možno jedným PHP scriptom vypisovať tu tabuľku.. Vyrieši to ten problém? Len.. ako to vypísať, keď to vypisujem takto <table><td id="tuchcemteplotu"></td> Medzi tie tagy mi to vloží.. ako tam však vypíšem tie ostatné?


_________________
http://bit.do/bitcoinyzdarma --- Bitcoiny zdarma každú hodinu
Online

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

Registrovaný: 17.07.11
Prihlásený: 21.11.17
Príspevky: 1432
Témy: 2 | 2
Bydlisko: Praha / Rev...
NapísalOnline : 13.10.2017 8:07 | Ajax tečie ako vodopád (pamäť)

A na tom záleží, kde to vypisuješ? Veď si vrátiš json všetkých hodnôt a vypíšeš si ich kde chceš.

PHP
Kód:
$data = [
    'hodnota1' => $nieco,
    'hodnota2' => $niecoDalsie,
];

header('Content-Type: application/json');
echo json_encode($data);


Javascript
Kód:
$.get('jedenskript.php', function(data){
    console.log(data); //skontroluj, ze to funguje
    $('#zavlaharezim').text(data.hodnota1);
    $('#dalsirezim').text(data.hodnota2);
});


_________________
Na súkromné správy týkajúce sa problémov, ktoré sa riešia vo fóre, neodpovedám!
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 17.02.14
Prihlásený: 20.11.17
Príspevky: 297
Témy: 105 | 105
Bydlisko: Šuňava
Vek: 21
Napísal autor témyOffline : 14.10.2017 1:40 | Ajax tečie ako vodopád (pamäť)

Urobil som to tak, že tie data čo sa vypisujú do tabuľky som dal do jedného setintervalu a nastavil na 2000 a ďalšie podobne podľa podstránok a momentálne je to bez chýb a nevytazuje ani RAM :) ale i tak dik za pomoc.


_________________
http://bit.do/bitcoinyzdarma --- Bitcoiny zdarma každú hodinu
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 17.02.14
Prihlásený: 20.11.17
Príspevky: 297
Témy: 105 | 105
Bydlisko: Šuňava
Vek: 21
Napísal autor témyOffline : 14.10.2017 1:40 | Ajax tečie ako vodopád (pamäť)

Urobil som to tak, že tie data čo sa vypisujú do tabuľky som dal do jedného setintervalu a nastavil na 2000 a ďalšie podobne podľa podstránok a momentálne je to bez chýb a nevytazuje ani RAM :) ale i tak dik za pomoc.


_________________
http://bit.do/bitcoinyzdarma --- Bitcoiny zdarma každú hodinu
 [ Príspevkov: 6 ] 


Ajax tečie ako vodopád (pamäť)



Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy.

Chyba AJAX scriptu ako ju najst ?

v JavaScript, VBScript, Ajax

1

89

14.08.2013 15:58

Ďuri

V tomto fóre nie sú ďalšie neprečítané témy.

AJAX & SILVERLIGHT ... ako na nich? zeby dobra kniha?

v JavaScript, VBScript, Ajax

5

419

28.01.2009 18:02

Blackdevil

V tomto fóre nie sú ďalšie neprečítané témy.

Ako vyprázdniť vyrovnávaciu pamäť?

v Operačné systémy Microsoft

1

361

10.04.2013 20:02

shiro

V tomto fóre nie sú ďalšie neprečítané témy.

Ajax upload prípadne ako odoslať formulár po klik. na odkaz

v JavaScript, VBScript, Ajax

0

351

06.02.2010 18:43

Flety

V tomto fóre nie sú ďalšie neprečítané témy.

Ako mam vypnut virtualnu pamat?

v Operačné systémy Microsoft

6

445

18.09.2008 15:41

Hackerious

V tomto fóre nie sú ďalšie neprečítané témy.

Pamäť 10x lacnejšia ako flash údajne do 18 mesiacov

v Novinky

1

192

31.10.2007 18:43

mimkork

V tomto fóre nie sú ďalšie neprečítané témy.

ako kupit spravnu pamat do nb aby isla v duali

v Pamäte

4

616

14.08.2007 8:40

Markus

V tomto fóre nie sú ďalšie neprečítané témy.

php,ajax

v PHP, ASP

4

224

15.01.2012 22:45

shaggy

V tomto fóre nie sú ďalšie neprečítané témy.

Ajax - help

v JavaScript, VBScript, Ajax

2

92

06.11.2013 14:26

Qip

V tomto fóre nie sú ďalšie neprečítané témy.

AJAX refresh

v JavaScript, VBScript, Ajax

0

806

19.10.2008 11:20

max-m

V tomto fóre nie sú ďalšie neprečítané témy.

ajax anketa

v Ostatné

4

1231

12.05.2007 20:56

javo

V tomto fóre nie sú ďalšie neprečítané témy.

ajax standardy

v JavaScript, VBScript, Ajax

1

375

12.05.2009 17:48

Ďuri

V tomto fóre nie sú ďalšie neprečítané témy.

Ajax manual

v JavaScript, VBScript, Ajax

7

919

27.05.2010 21:33

DARSON

V tomto fóre nie sú ďalšie neprečítané témy.

AJAX problem

v JavaScript, VBScript, Ajax

2

216

07.05.2012 19:37

shaggy

V tomto fóre nie sú ďalšie neprečítané témy.

ajax guestbook

v Ostatné

0

771

09.08.2007 22:25

javo

V tomto fóre nie sú ďalšie neprečítané témy.

ajax reload

v PHP, ASP

12

297

04.09.2012 19:22

Ďuri



© 2005 - 2017 PCforum, edited by JanoF