NOVINKA! E-learningové kurzy umělé inteligence. Nyní AI za nejlepší ceny. Zjisti více:
NOVINKA – Víkendový online kurz Software tester, který tě posune dál. Zjisti, jak na to!

Diskuze: Auto refresh chat

V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.

Aktivity
Avatar
Neaktivní uživatel:2.1.2016 12:38

Ahojte, potreboval by som pomôcť. Dal som sa vytvoriť socialnu sieť, a už som skoro pri konci. Lenže som zabudol na jeden dosť podstatný problém: neviem ako automaticky refrešnuť stránku po príchode novej správy. Správy sa ukladajú do zvlášt XML suboru ktorý je uložený u jedneho z dvoch priatelov ktorý si píšu. Vopred ďakujem za pomoc.

Odpovědět
2.1.2016 12:38
Neaktivní uživatelský účet
Avatar
Jan Poláček
Tvůrce
Avatar
Odpovídá na Neaktivní uživatel
Jan Poláček:2.1.2016 15:34

Tenhle problém ti samotné PHP asi nevyřeší, vidím to na AJAX request např přes jquery, kde se řeší velmi jednoduše, takto nemusíš aktualizovat celou stránku, ale jen připojit nový příspěvek ke konci chatu.

Nahoru Odpovědět
2.1.2016 15:34
Instrukce na adrese 0x77104f29 odkazovala na adresu paměti 0x00000014. S pamětí nelze provést operaci: written.
Avatar
Odpovídá na Jan Poláček
Neaktivní uživatel:2.1.2016 16:41

Veľmi ti ďakujem :) Už to mám.

Nahoru Odpovědět
2.1.2016 16:41
Neaktivní uživatelský účet
Avatar
Odpovídá na Neaktivní uživatel
Neaktivní uživatel:2.1.2016 16:42

A pokud si s AJAXem nevis rady, tady na siti mame alespon do zakladu par clanku. Neni to jeste kompletni, ale na uvod do tematiky to muze byt dost.

Nahoru Odpovědět
2.1.2016 16:42
Neaktivní uživatelský účet
Avatar
Patrik Smělý
Tvůrce
Avatar
Odpovídá na Neaktivní uživatel
Patrik Smělý:5.1.2016 23:29

Ahoj, ajax není řešení ... Ajax se používá výhradně pro posílání dat na server a né k obnovování stránky, k takovým věcem se používají websockety (php->nodejs->uzivatel) dokonce zde máme přímo návod, i zdejší chat využívá websockety. http://www.itnetwork.cz/php/websocket

 
Nahoru Odpovědět
5.1.2016 23:29
Avatar
Odpovídá na Patrik Smělý
Neaktivní uživatel:6.1.2016 10:16

Ale websockety nejsou jedine reseni, stejne jako nejde rict, ze AJAX neni reseni a ze se pouziva vyhradne (ctu jako pouze) k tomu cos napsal...AJAXem si klidne tahej obrazky, XML soubory, kdovico jeste ... AJAXem se data i stahuji ze serveru - metoda GET ... v zasade s tebou souhlasim, ze websockety jsou vyborna volba, ale nepodcenoval bych tolik schopnosti AJAXu ... muze nabidnout mnohem vic, nez jsi spomenul a je jednoduche ho implementovat

Nahoru Odpovědět
6.1.2016 10:16
Neaktivní uživatelský účet
Avatar
Neaktivní uživatel:6.1.2016 11:56

ja som to nakoniec vyriešil takto:

<script type="text/javascript">
      setInterval(function(){
            $("#spo'.$i.'").load("home.php #spo'.$i.'");
      }, 2000);
</script>

len sa bojím či to nebude moc zaťažovať server.

Nahoru Odpovědět
6.1.2016 11:56
Neaktivní uživatelský účet
Avatar
Odpovídá na Neaktivní uživatel
Neaktivní uživatel:6.1.2016 12:28

jednou za 2000 ms to neni nic narocneho, spis si pro pozdejsi praci uloz ten interval do promenne, exportni ji do globalniho prostoru (nemaspace) muzes to treba prihodit oknu...to by tolik nevadilo a pokud se neco pokazi (klient se odpoji od netu) tak das clearInterval(pro­menna) ... pac kdyz ti to kiksne tak se to bude furt volat..pak (kdyz se znova pripoji) to muzes zase obnovit, a nebo pockat az ten nekdo refreshne stranku a ona se nacte a samo se to spusti znova ..

Nahoru Odpovědět
6.1.2016 12:28
Neaktivní uživatelský účet
Avatar
Odpovídá na Neaktivní uživatel
Neaktivní uživatel:6.1.2016 13:55

To ma nenapadlo :) Idem to hneď spraviť. Ďakujem :)

Nahoru Odpovědět
6.1.2016 13:55
Neaktivní uživatelský účet
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 9 zpráv z 9.