Autor | Zpráva | ||
---|---|---|---|
qwerasd Profil |
#1 · Zasláno: 25. 10. 2010, 12:52:36
Zdravím,
mám takový zajímavý problém, potřeboval bych detekovat vypnutí IE vpravo nahoře křížkem a klávesovou skratkou myslím že alt+f4. Vůbec nevím jak na to, může te mě někdo nasměrovat? |
||
xmark Profil |
#2 · Zasláno: 25. 10. 2010, 13:03:34
Jestli myslíš ze strany webu, tak tam není jednoduché detekovat vůbec to, že návštěvník zavřel okno nebo prohlížeč. A to mluvím o přihlášeném uživateli. Rozlišit alt+f4 a křížek nelze.
Píšeš o IE, předpokládám, že myslíš obecně prohlížeč. Celý ten dotaz je dost .. ehm, zvláštní. |
||
Bubák Profil |
#3 · Zasláno: 25. 10. 2010, 13:15:13
Přečti si spolahnutie na onunload.
Potřebuješ nějak odlišit ukončení prohlížeče od opuštění, nebo zavření stánky? Myslím si, že to nejde. Koukni taky na www.jakpsatweb.cz/clanky/ctenari-oteviraji-hodne-oken.html |
||
qwerasd Profil |
#4 · Zasláno: 25. 10. 2010, 14:48:17
V podstatě jde o to, že potřebuju zajistit pouze jednoho uživatele přihlášeného. Pokud klikne na tlačítko odhlásit vše funguje. A povolí se přihlášení nového uživatele. Pokud však ukončí práci zavřením prohlížeče, tak se sice odhlásí, ale potřebuju upravit proměnnou, ktera povolí nového uživatele. Přemýšlel jsem o tom že bych ze stránky neustále posílal data a tím pak kontroloval,,jesli je aktivní připojení. Když se pak vypne prohlížeč tak se zruší posílání dat. Tak to zkusím asi touto cestou.
|
||
Tori Profil |
#5 · Zasláno: 25. 10. 2010, 15:51:30
qwerasd:
„Přemýšlel jsem o tom že bych ze stránky neustále posílal data a tím pak kontroloval,,jesli je aktivní připojení.“ což ovšem znemožní přístup lidem s vypnutým JS. Nešlo by použít sessions, logovat jestli je někdo na webu + čas poslední aktivity, a po určité době automaticky odhlásit? Pokud teda váš web nevyžaduje, aby uživatel třeba 10min na něco čekal (např.posílání velkých souborů). A JS použít třeba jen na nějakou hlášku typu: "pozor, příliš dlouho nic neděláte, za pár minut budete automaticky odhlášeni." |
||
qwerasd Profil |
#6 · Zasláno: 26. 10. 2010, 08:21:01
Tori: Tohle je pro úzkou skupinu lidí, a půjde to, jen potřebuju javascriptem posílat ob časový interval měnící se číslo. Což nemůžu nikde ani trochu najít jak na to, ale to se poddá. Musí!!!!!!!!
|
||
Joker Profil |
#7 · Zasláno: 26. 10. 2010, 08:24:43
qwerasd:
„Pokud však ukončí práci zavřením prohlížeče, tak se sice odhlásí, ale potřebuju upravit proměnnou, ktera povolí nového uživatele.“ Jak to? Ta podmínka není, že nový uživatel se povolí pokud není nikdo přihlášený? |
||
qwerasd Profil |
#8 · Zasláno: 26. 10. 2010, 09:07:04
kdyz je přihlášený uživatel,,tak ostaní se nemůžou přihlásit. Když se odhlásí tlačítkem, křížkem prohlížeče, alt+f4, tak se povolí přihlášení jiného uživatele. Tak a tady jsem si udelal skript co mi ob 1sekundu posílá aktuální sekundu. Ted už jen potřeuju v programu do kterého data posílám porovnávat jestli se posílané sekundy mění, nebo jestli jsou stejné. A tím zjistím připojení k prohlížeči.
<html> <head> <meta http-equiv="Content-Type" content="web/html; charset=windows-1250"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="pragma" content="no-cache"> </head> <body onload="StartTime();"> <form id="myform" name="citac"> <script type="text/javascript" language="JavaScript"> var formular = document.citac; var currentTime = new Date(); var cislo; function StartTime() { Timer=setInterval('posli();', 1000); } function posli() { cislo = currentTime.getSeconds(); formular['data'].value = cislo; document.forms["myform"].submit(); } </script> <input type="hidden" id="data" name="_cislo_"> </form> </body> </html> |
||
Joker Profil |
#9 · Zasláno: 26. 10. 2010, 09:42:32
qwerasd:
Aha, to bylo myšlené jako že uživatel je odhlášen fyzicky, ne že je odhlášen někde na serveru. K tomu skriptu: - Každou sekundu mi přijde moc. Po jaké době neaktivity chcete uživatele odhlásit? Podle mě by bohatě stačilo odhlásit třeba po 5 minutách nečinnosti a „pingat“ server každou minutu nebo tak. - „Ted už jen potřeuju v programu do kterého data posílám porovnávat jestli se posílané sekundy mění, nebo jestli jsou stejné.“ Cože? Jak by mohla nastat situace kdy jsou stejné? - Přijde mi to moc překombinované. K dosažení účelu stačí udělat následující: Klient v nějakém intervalu „pingne“ server, tj. jen načte nějakou stránku, nemusí vůbec nic posílat. Stránka taky nemusí nic dělat, jen si poznamená aktivitu. Třeba po 5 minutách neaktivity je uživatel automaticky odhlášen. |
||
qwerasd Profil |
#10 · Zasláno: 26. 10. 2010, 10:48:06
Ja tímto skriptem nechci dělat neaktivitu, já potřebuju detekovat ze serveru, že je aktivní spojení s prohlížečem, pokud tak není potřebuju odhlásit uživatele. A pokud se vypne prohlížek, tak se přestanou vysílat data, v programu se pak hodnota proměnné nemění, pokud je prohlížeč aktivní, tak se hodnota neustále mění. Takhle to myslím.
|
||
Joker Profil |
#11 · Zasláno: 26. 10. 2010, 11:40:52
qwerasd:
„Ja tímto skriptem nechci dělat neaktivitu, já potřebuju detekovat ze serveru, že je aktivní spojení s prohlížečem“ To je snad to samé. „přestanou vysílat data, v programu se pak hodnota proměnné nemění, pokud je prohlížeč aktivní, tak se hodnota neustále mění“ Pokud na serveru je PHP, tak to takhle nefunguje. U jiných jazyků nevím. |
||
__construct Profil |
#12 · Zasláno: 26. 10. 2010, 11:49:58
qwerasd:
„se přestanou vysílat data, v programu se pak hodnota proměnné nemění, pokud je prohlížeč aktivní, tak se hodnota neustále mění“ To o čo sa pokúšaš sa nazýva Denial of Service. Na W3C je aj FAQ ak sa voči to zabezpečiť. :-) |
||
qwerasd Profil |
#13 · Zasláno: 26. 10. 2010, 13:12:10
Joker: Já nejedu přes PHP, ale komunikuji s ControlWebem kde jede SQL server. A v ControlWebu vidím že se jestli se hodnota mění nebo ne, a podle toho se odhlašuju z SQL serveru. Tohle není aplikace postavená jen na webové aplikaci. Je to jen její část, většina je pak v ControlWebu.
|
||
__construct Profil |
#14 · Zasláno: 26. 10. 2010, 13:34:25
qwerasd:
Pozri si toto vlánko |
||
Časová prodleva: 13 let
|
0