Kezdőoldal » Számítástechnika » Weblapkészítés » Ajaxban hogyan lehet frissítés...

Ajaxban hogyan lehet frissítést indítani egy bekövetkező esemény hatására?

Figyelt kérdés

Az ötletem az lenne, hogy van egy oldalam, amin a felhasználók, tudnak egymásnak üzenetet küldeni (Privát üzenet, nem Chat)

És a kérdésem az lenne, hogy hogyan oldahtó meg Ajax-ban (vagy máshogy ha van ötletetek) az, hogy ha mysql-be egy új mező kerül a messages táblába, akkor frissítsen egy divet vagy valami hasonlót, ami jelzi az üzenet érkeztét?

Időzített frissítést nem szeretnék, így ha lehet, azt hanyagoljátok!

Nem szükséges teljesen megírni, csak nagyjából egy kiindulópontra lenne szükségem, pl. egy funkcióra...

Előre is köszönöm a válaszokat!



2013. jan. 23. 22:41
 1/6 anonim ***** válasza:
100%

Ajánlom neked ezt a projektet: [link]

Ez kb azt is tudja ami neked és egy hasznos kis cucc.

2013. jan. 23. 22:43
Hasznos számodra ez a válasz?
 2/6 A kérdező kommentje:
Köszönöm, ebből már el tudok indulni, de azért még elfogadok ötleteket jobbnál-jobb dolgokra. :)
2013. jan. 23. 22:46
 3/6 A kérdező kommentje:
Mondjuk telepítés és hasonlók nélkül nem lehet szimplán kóddal?
2013. jan. 23. 22:54
 4/6 anonim ***** válasza:
100%

Ugye 2 "féle" megközelítés van a problémára:

Push/pull.


A "pull" esetén te húzod le a tartalmat a szervertől, azaz te indítasz x időnként egy kérést, hogy van-e változás. (Ez az egyszerűbb a HTTP protokoll állapotmentes felépítése miatt, de ezt elvetetted.)


A "push" esetén a szerver "tolja" a tartalmat a kliensnek.

Erre több megoldás van (java applet, flash kiegészítés), de az egyik legelterjedtebb a long polling. A lényege annyi, hogy a háttérben indul egy kérés a szerver felé, ami x időn belül csak akkor ad választ, ha változás történt. Ha nincs változás, akkor egy adott idő után (timeout) visszadja, hogy nincs válasz, akkor a kliens újra kérdést küld és várakozik.

Így a hatás olyan "mintha" azonnal történne változás.

(Ha jól rémlik az általam már linkelt megoldás is ezt használja talán.)



Esetleg ajax helyett megfontolhatod a HTML5 WebSocket-jét, talán a te problémádra egyszerűbb és elég lenne.

2013. jan. 23. 23:19
Hasznos számodra ez a válasz?
 5/6 A kérdező kommentje:
Köszönöm, és ezt hogyan lehet html5 websovkettel? Mi az egyáltalán?
2013. jan. 24. 09:43
 6/6 anonim ***** válasza:

Én is a websocketre szavazok.

Ezt ajánlom figyelmedbe kiindulásnak.

[link]

2013. jan. 24. 18:21
Hasznos számodra ez a válasz?

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

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!