Autor Zpráva
jacob
Profil
Zdravím, ide mi o toto: mám web, na ktorom bude registrovaných najviac okolo 30 ľudí. Chcel by som urobiť niečo ako tabuľku, v ktorej by bolo, kto je práve online. Prihlasovanie mám riešené cez sessions, v $_SESSION['name'] sa predáva meno užívateľa a vždy sa to na začiatku stránky kontroluje. Takže by tam vlastne bolo niečo ako: "Online: " a vypísali by sa všetky súčasné sessiony (aspoň tipujem, že sa to tak robí). Už som to viackrát videl, neviete niekto ako na to?
koudi
Profil
no, nejsem si jistej, že by šlo "vypsat všechny sessions".
Já osobně (asi to jde i lépe) bych to řešil tak, že bych si u každýho usera do db uloźil, kdy naposledy kliknul na nějaký odkaz. Prostě vždycky, když se ti ověřuje, jestli se správně přihlašuje, tak tak ještě updatuješ v db. Při odhlášení taky. No a pak už jenom necháš vypsat, uživatele, kteří byli aktivní, řekněme za posledních 5 minut (lze i jinak).
Ale asi to jde i lépe...
jacob
Profil
No, toto by išlo, ale neviem, nezdá sa mi to veľmi praktické. Ale čo keby niekto jednoducho zavrel prehliadač (čo robí myslím takmer každý)? Potom by zmizol až o 5 min ale naopak ak by 5 min nič neurobil, tiež by zmizol. Ale ak mi nikto neporadí nič lepšie, tak to tak urobím...
koudi
Profil
Ale čo keby niekto jednoducho zavrel prehliadač (čo robí myslím takmer každý)? Potom by zmizol až o 5 min ale naopak ak by 5 min nič neurobil, tiež by zmizol
Jo, to je ten problém. Podle mě neni přesnej způsob, jak to zjistit.
igamenir
Profil
ale naopak ak by 5 min nič neurobil, tiež by zmizol
Tak dej stránkám refresh po 4,5 minutách.
jacob
Profil
Tak dej stránkám refresh po 4,5 minutách.
Toto myslím nemôžem urobiť, ak by niekto písal dlhší napr. článok (je to možné), po 4,5 minútach by mu jednoducho zmizol, a musel by písať odznovu. Takže asi to urobím tak, ako to napísal koudi, ak nie je iná možnosť.
koudi
Profil
tak si tam můžeš dát delší limit, samozřejmě.
Prostě kdo je zrovna online nikdy nemůžeš určit na 100%.
Leo
Profil
Problem je v tom, ze nic takoveho jako "byt online" de facto neexistuje. Existuji jen jednotlive, na sobe nezavisle http pozadavky klienta (prohlizece) na webserver. A s tim se proste musite smirit a pracovat. Leo
igamenir
Profil
po 4,5 minútach by mu jednoducho zmizol, a musel by písať odznovu
Tak to lze zase vyřešit tak, že o obnovení se stará javascript, přičemž se to přeruší, pokud se bude něco psát. Mám to třeba na jedněch ze svých stránek (jsou dělané narychlo a neodladěné, takže radši jenom v IE).
jacob
Profil
igamenir
Zaujímavé, ešte som nič takéto nevidel... dobrý nápad.

Leo
Takže neexistuje efektívnejšia možnosť, než tu už popísaná?
luka
Profil *
Satci jeden stlpec ktory zapise sesid do tabulky a vedla kedy bol zapisany, ako sa to robi pri autorizacii.K tomu mozes pridat stlpec aktivny a don ak true tak 1 ak ee tak 0.Uzivatelov by si vypisoval podla aktivneho,cize jednoduchy dotaz na vypisanie vsetkych co su aktivny 1.Tu autorizaciu by si dal vzdy na zaciatok kazdej stranky kde by bol upload autorizacie ktory by vzdy prepisoval cas v tabulke a a ked nieje dlho aktivny vyhodil ta do p.... .Online uzivatelov daj do framu ktory mozes refreshnut kedy kolvek bez toho aby sa ti menilo to co pises.
jacob
Profil
Dobre, díky všetkým, spravím to nejak takto.
Toto téma je uzamčeno. Odpověď nelze zaslat.

0