"whois online" session-ből mysql-be
Üdv!
Nem találtam a keresőn sem ilyesmi témát, de azért bocs, ha már volt.
Szóval ezzel a session dologgal elég sok kérdésem volna, de mindegy. Épp ezért írok nektek.
Tehát azt szeretném, ha elmentené az oldalt épp néző IP-jét (vagy bármi másét ahonnan azonosítani lehet), és - pl. session használatával - elmentené azt egy adatbázisba, de ha nem nézi tovább az oldalt, kitörli azt. (Konkrétan arra kéne, hogy milyen regisztrált felhasználók vannak online, de mindenképp szeretném, ha elmentené egy adatbázisba.)
Szóval ha tudtok ajánlani egy scriptet, azt mélységesen megköszönném.
FGK
■ Nem találtam a keresőn sem ilyesmi témát, de azért bocs, ha már volt.
Szóval ezzel a session dologgal elég sok kérdésem volna, de mindegy. Épp ezért írok nektek.
Tehát azt szeretném, ha elmentené az oldalt épp néző IP-jét (vagy bármi másét ahonnan azonosítani lehet), és - pl. session használatával - elmentené azt egy adatbázisba, de ha nem nézi tovább az oldalt, kitörli azt. (Konkrétan arra kéne, hogy milyen regisztrált felhasználók vannak online, de mindenképp szeretném, ha elmentené egy adatbázisba.)
Szóval ha tudtok ajánlani egy scriptet, azt mélységesen megköszönném.
FGK
1) Javascripttel sztem meg
2) Rövid idejű cookie-kat beállítani mindig a frissítéskor
3) Aki inaktív x ideig, azt úgy veszed mintha ott sem lenne
4) Ezek összegyúrva
Nekem ennyi ötletem van így hirtelen.
Mr.Tiny
Hát...
De azért köszi. Más?
FGK
Jólvanna :)
Mr.Tiny
Korábbi fórum témák
http://weblabor.hu/forumok/temak/7399
http://weblabor.hu/forumok/temak/1898
--------
Poetro
Az első meg az utolsó
Mr.Tiny
Igen, az első és az
Nem lehetne úgy megoldani, hogy nem kell timeout, hanem csak egyszerűen törli, ha már nem nézik (tehát valós időben kezeli)?
FGK
[quote]ha már nem
No itt van a baj. Ha elolvastad a cikkeket, amit írt Gergely, akkor láthattad, hogy a kliens (böngésző) és a webszerver között a kommunikáció megszakad, amikor te megkapod a kért weblapot, s éppen ezért ha te csak olvasol egy lapot pl 5 percig, vagy már bezártad 5 perce az a szervernek teljesen mindegy.
Meg lehet oldani, hogy megtudd, be van-e zárva a lap vagy még nézegeti. Ami így hirtelen eszembe jut, az egy rejtett iframe, amiben frissítgeted a lapot, így a felhasználót nem zavarja (csak egy kis sávszél), te meg folyamatosan kapod a kéréseket, így tudod mikor zárja be a lapot, így az időlimitet be tudod pontosan állítani.
Valós időben, ahogy írtad szerintem ez az egyetlen megoldás, amit lehet többféleképpen variálni. Az, hogy amikor újra meglátogat az x sess_id-jű felhasználó, s akkor ellenőrzöd, hogy ő-e a jogos tulajdonosa, meg ami akarsz, az a legjobb megoldás és kevésbé erőforrásigényes is.
Remélem jól értettem mit akarsz mondani :)
Mr.Tiny
Ez jó
Aha, köszi, ez jó ötletnek hangzik, de törtem-törtem a fejem és nem jöttem rá, mi lenne a helyes kód abba az iframe-be...
Tehát az iframe src-éba írjam az URL-hez a sessiont és pl. 5 mp-enként töltse újra az oldalt, az időkorlát pedig mondjuk 6 mp. legyen? Ez nem rossz ötlet, de a gyakorlatban működni fog?
FGK
Így elgondolkodtam, az
A szerver oldal kicsit nehézkesebb. Ott el kell mindig tárolnod (felülírni) az időpontot, amikor kapsz egy sess_idt, s majd amikor a felhasználó legközelebb megy az oldaladra akkor tudsz csak ezzel kezdeni valamit. Ezért jobb megoldás a másik. Van lehetőség időzített scriptekre, de az már túlbonyolítása az egésznek. Meg így is szerintem. Ha már valós időben szeretnéd, akkor a js a legjobb megoldás, ott viszont ott van a dolog, hogy mi van h ale van tiltva.
Egyébként a valós idővel csak azt szeretnéd megtudni, hogy pontosan mikor hagyta el az oldalt, vagy amikor elhagyja, akkor azonnal törölni is szeretnéd a sess_id-jét?
Mr.Tiny
Az adatbázisból szeretném
JavaScript-tel te ezt hogy oldanád meg?! Az nem probléma, ha le van tiltva, ki lehet szűrni (pl. nem enged úgy belépni).
Az rejtett frame-es megoldáshoz viszont most jövök rá, hogy nem is kell session meg ilyesmi... elég ha generálok egy számsort, azt elmentem meg az IP-t, és kész, nem? Viszont IE-vel kattog minden újratöltésnél...
Amúgy hányféleképp lehet az IP-t lekérdezni? Az Ultraweben próbálkoztam, de nem működött. :(
FGK
JS az cink
OFF: Nálam működik az IP-s a HTTP_X_FORWARDED_FOR-nál, mert routerem van...
Azzal, hogy nem engeded belépni, azzal még nem éred el, hogy legyen js-je, mert vannak olyanok, akiknek pl a böngészője nem támogatja. Régi cucc, vakoknak külön böngésző, stb. Bár ezek mind kezdik támogatni, de biztos lesz ilyen látogató és őt nem kéne kizárni az oldalról.
Inkább sess_id. Azt is irányíthatod te, hogy mi legyen, de ha ennyire zavar, akkor tedd azt. Egyébként ne véletlen számokkal csináld csak, mert akkor lehet ugyanaz is. Erről olvashatsz a H.Gergely által belinkelt 2. cikkben
Mr.Tiny
munkamanet kezelés
A fenti témában jelent meg nálunk is két cikk. Az első célja az alapok tisztázása, a másodikban ismertetett megoldás alapján pedig könnyedén meg tudod csinálni, amit szeretnél.
UPDATE: Köszi, a linkek javítva.
Felhő
Rossz linkek
Helyes linkek:
http://weblabor.hu/cikkek/munkamenetkezeles1
http://weblabor.hu/cikkek/munkamenetkezeles2
Mr.Tiny
Hát, nekem így is
FGK
Tolass vissza
P][G
Nem, nem felejtettem ki, de
FGK